Scrivere un funzione ricorsiva che stampa a video i valori di una lista di elementi con campo info di tipo intero.

Documenti analoghi
Fondamenti di Informatica T-1 Modulo 2

Puntatori in C. Fondamenti di Informatica. Daniele Loiacono

Operazioni su liste. Creazione della lista (vuota e successivi inserimenti) Lettura di una lista Stampa di una lista Cancellazione di una lista

Fondamenti di Informatica Ing. Biomedica

Esercitazioni di FONDAMENTI DI INFORMATICA MODULO B

Fondamenti di Informatica T-1

Inserimento di un elemento in coda. quale va collegato quello nuovo. ultimo. *lista 8 3. aux. ultimo. *lista 8 3. aux

Esercizio 1: funzione con valore di ritorno di tipo puntatore

Esercitazione 2 SAT. 11 Novembre Denizione del problema SAT

Laboratorio di Informatica I

Esercizi. Fondamenti di Informatica

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 2

Esercitazioni di Prog. II (funzioni su insiemi) Chiara Petrioli

Problemi legati all'uso dei Puntatori

INFORMATICA - CdL in FISICA. COMPITO del 28/05/2003 SOLUZIONI PROPOSTE

Liste. Marco Alberti Programmazione e Laboratorio, A.A

Ambienti di Programmazione per il Software di Base

Programmazione I - Laboratorio

Informatica B

Fondamenti di Informatica T-1

Esercizio 1: media di numeri reali (uso funzioni e struct)

Lezione di Laboratorio di Prgrammazione: /05/2019 a.a. 2018/2019 R.Prevete

Esercitazioni di Fondamenti di Informatica - Lez. 8 27/11/2018

Esercizi di programmazione ricorsiva. Appunti per gli studenti di Programmazione I e Laboratorio (corsi A-B)

INFORMATICA 2010/11 - CdL in FISICA TERZO APPELLO 8/09/2011: SOLUZIONI PROPOSTE

Esercizi su programmazione ricorsiva 1. Pericle Perazzo 23 marzo 2012

cout << "Inserisci un numero:" << endl; cin >> n; ris = n*2; cout << "Il doppio di " << n << " e " << ris << endl;

Esercitazioni di Fondamenti di Informatica - Lez /12/2018

Laboratorio di algoritmi e strutture dati

Esercitazione Fondamenti di informatica 2

Prof. E. Occhiuto INFORMATICA 242AA a.a. 2010/11 pag. 1

PROGRAMMAZIONE II canale A-D luglio 2008 TRACCIA DI SOLUZIONE

Fondamenti di Informatica T-1

Fondamenti di Informatica L-A

Esercizio 1 Liste: calcolo del numero di elementi ripetuti in una lista

Corso di Fondamenti di Informatica Ingegneria delle Comunicazioni BCOR Ingegneria Elettronica BELR Introduzione al C Esercitazione 7

Esercitazioni del Corso di Fondamenti di Informatica ARRAY. Prof. Giuseppe Manco. A cura di Ing. Andrea Tagarelli

Fondamenti di Informatica T-1

Dipartimento di Elettronica, Informazione e Bioingegneria Politecnico di Milano

Fondamenti di Programmazione - Prof.ssa Gargano Anno Acc Esercitazioni 2009

Esercitazione 5 Alberi Binari di Ricerca

Parte II ing. Domenico Daniele Bloisi, PhD

Esercitazioni di Fondamenti di Informatica - Lez. 5 30/10/2018

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica

strutture e file di testo/binari Esercizio - lettura/filtro/scrittura PEOPLE.TXT PARTNERS.DAT Due persone sono compatibili

Informatica 1. Prova di recupero 21 Settembre 2001

Classe Vettore (i) Creare una classe che consenta di gestire un vettore di N elementi reali (double), che preveda i seguenti metodi:

12 Function Handles e Ricorsione in MATLAB

Strutture Dinamiche. Fondamenti di Informatica

Fondamenti di Informatica T-1

Informatica A aa Seconda prova in itinere. Esempi di esercizi possibili

Fondamenti di Informatica T-1

Altri Esercizi. Corso di Laurea Ingegneria Informatica Fondamenti di Informatica. Dispensa E17. C. Limongelli Maggio 2012

Strutture Dinamiche. Strutture Dinamiche

Esercizi riassuntivi (Fondamenti di Informatica 2 Walter Didimo) Soluzioni

I parametri e il sovraccarico

Strutture dati dinamiche in C (II)

Esercizi di Algoritmi e Strutture Dati

Altri Esercizi. Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 2. Dispensa E09. C. Limongelli Marzo 2008

Fondamenti di Informatica T-1

Esercitazione 8. Corso di Tecniche di programmazione. Laurea in Ingegneria Informatica

Fondamenti di Informatica

Dipartimento di Elettronica, Informazione e Bioingegneria Politecnico di Milano

Nella propria home directory creare una sottodirectory chiamata es08, in cui metteremo tutti i file C di oggi.

Fondamenti di Informatica L-A. Esercitazione 6

GLI ALBERI BINARI DI RICERCA. Cosimo Laneve

Esercitazione 7. Laurea in Ingegneria Informatica (Canale di Ingegneria delle Reti e dei Sistemi Informatici - Polo di Rieti)

Nome: Cognome: Matr.: Fila: Posto:

Le strutture. Una struttura C è una collezione di variabili di uno o più tipi, raggruppate sotto un nome comune.

Algoritmi e Strutture di Dati

Programmazione in Java (I modulo) Lezione 11: Metodi della classe Math

Note per la Lezione 4 Ugo Vaccaro

Fondamenti di informatica T-1 (A K) Esercitazione 8: classi e oggetti

Prova di Algoritmi e s.d. (1o anno) 7 Febbraio TESTO e RISPOSTE

La programmazione nel linguaggio C

IL CONCETTO DI LISTA!

Esercizi

argomenti (Sezione 9.1 e Capitolo 13 Savitch) puntatori puntatori I PUNTATORI E LE STRUTTURE DATI DINAMICHE 1. dichiarazioni di puntatori

Esercitazione: liste ordinate di interi

Ripasso di programmazione ricorsiva

Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a settembre 2012

Esercizio n.1 FONDAMENTI DI INFORMATICA 1. Esercizio n.2. Soluzione. LINGUAGGIO C Funzioni e gestione file: esercitazione

Esame di Algoritmi e Strutture Dati Corso di Laurea in Ingegneria Informatica Canali A-L, M-Z

Laboratorio di Python

ELEMENTI DI INFORMATICA LB ESERCITAZIONE (del 09/03/2007) Files, Strutture e Liste

d. Cancellazione del valore 5 e. Inserimento del valore 1

Si descriva il comportamento del metodo main della classe ES2: cosa viene stampato sul video? Giustificare la risposta.

ARRAY E STRINGHE. ESERCIZIO 2 Scrivere un programma che calcola il numero di doppie e di dittonghi (2 vocali vicine) presenti in una stringa.

Algoritmi e Strutture Dati

INFORMATICA DI BASE Linguaggio C Prof. Andrea Borghesan

Fondamenti di Informatica T1 Mappe

Algoritmi e Strutture Dati

Introduzione alla Ricorsione

Algoritmi e Strutture Dati

Un esempio: le liste ordinate di interi

Transcript:

Esercizio 1 Fondamenti di Informatica - Esercitazione n.13 1 Scrivere un funzione ricorsiva che stama a video i valori di una lista di elementi con camo info di tio intero. stama(elem* ); 1 chiamata stama(=); il untatore non è NULL, stamo 70 e chiamo stama(->un) 70 10 50 20 60 NULL

Esercizio 1 Fondamenti di Informatica - Esercitazione n.13 1 Scrivere un funzione ricorsiva che stama a video i valori di una lista di elementi con camo info di tio intero. stama(elem* ); 2 chiamata stama(=10); il untatore non è NULL, stamo 50 e chiamo stama(->un) 70 10 50 20 60 NULL 10

Esercizio 1 Fondamenti di Informatica - Esercitazione n.13 1 Scrivere un funzione ricorsiva che stama a video i valori di una lista di elementi con camo info di tio intero. stama(elem* ); 3 chiamata stama(=20); il untatore non è NULL, stamo 60 e chiamo stama(->un) 70 10 50 20 60 NULL 20

Esercizio 1 Fondamenti di Informatica - Esercitazione n.13 1 Scrivere un funzione ricorsiva che stama a video i valori di una lista di elementi con camo info di tio intero. stama(elem* ); 4 chiamata stama(==null); Il untatore è NULL, CASO BASE, non stamo nulla e non chiamo iù la funzione stama 70 10 50 20 60 NULL NULL

Esercizio 2 Fondamenti di Informatica - Esercitazione n.13 2 Scrivere un funzione ricorsiva che controlla se un vettore è ordinato in maniera decrescente e restituisce true se lo è, false altrimenti. 1 chiamata: controlla(v,7) v[5] < v[6]? No, chiamo controlla(v,6) 0 1 2 3 4 5 6 9 7 3 0-1 -8-15

Esercizio 2 Fondamenti di Informatica - Esercitazione n.13 2 Scrivere un funzione ricorsiva che controlla se un vettore è ordinato in maniera decrescente e restituisce true se lo è, false altrimenti. 2 chiamata: controlla(v,6) v[4] < v[5]? No, chiamo controlla(v,5) 0 1 2 3 4 5 9 7 3 0-1 -8

Esercizio 2 Fondamenti di Informatica - Esercitazione n.13 2 Scrivere un funzione ricorsiva che controlla se un vettore è ordinato in maniera decrescente e restituisce true se lo è, false altrimenti. 3 chiamata: controlla(v,5) v[3] < v[4]? No, chiamo controlla(v,4) 0 1 2 3 4 9 7 3 0-1

Esercizio 2 Fondamenti di Informatica - Esercitazione n.13 2 Scrivere un funzione ricorsiva che controlla se un vettore è ordinato in maniera decrescente e restituisce true se lo è, false altrimenti. 4 chiamata: controlla(v,4) v[2] < v[3]? No, chiamo controlla(v,3) 0 1 2 3 9 7 3 0

Esercizio 2 Fondamenti di Informatica - Esercitazione n.13 2 Scrivere un funzione ricorsiva che controlla se un vettore è ordinato in maniera decrescente e restituisce true se lo è, false altrimenti. 5 chiamata: controlla(v,3) v[1] < v[2]? No, chiamo controlla(v,2) 0 1 2 9 7 3

Esercizio 2 Fondamenti di Informatica - Esercitazione n.13 2 Scrivere un funzione ricorsiva che controlla se un vettore è ordinato in maniera decrescente e restituisce true se lo è, false altrimenti. 6 chiamata: controlla(v,2) v[0] < v[1]? No, chiamo controlla(v,1) 0 1 9 7

Esercizio 2 Fondamenti di Informatica - Esercitazione n.13 2 Scrivere un funzione ricorsiva che controlla se un vettore è ordinato in maniera decrescente e restituisce true se lo è, false altrimenti. 7 chiamata: controlla(v,1) E un vettore di 1 elemento, è di er se ordinato, non faccio controlli. CASO BASE: ritorno true 0 9 Cosa succedeva se uno dei controlli recedenti era vero (cioè il enultimo elemento <= ultimo elemento) Ritorno false

Esercizio 3 Fondamenti di Informatica - Esercitazione n.13 3 Scrivere un funzione ricorsiva che conta il numero di elementi che hanno camo info minore di un numero intero n assato alla funzione 1 chiamata conta(=, n=4) il untatore non è NULL, 3<4? Sì, ritorno 1+conta(->un,4) 3 10 12 20 int conta(elem *, int n) -9 NULL

Esercizio 3 Fondamenti di Informatica - Esercitazione n.13 3 Scrivere un funzione ricorsiva che conta il numero di elementi che hanno camo info minore di un numero intero n assato alla funzione 2 chiamata conta(=10, n=4) il untatore non è NULL, 12<4? No, ritorno 0+conta(->un,4) 3 10 12 20 int conta(elem *, int n) -9 NULL 10

Esercizio 3 Fondamenti di Informatica - Esercitazione n.13 3 Scrivere un funzione ricorsiva che conta il numero di elementi che hanno camo info minore di un numero intero n assato alla funzione 3 chiamata conta(=20, n=4) il untatore non è NULL, -9<4? Sì, ritorno 1+conta(->un,4) 3 10 12 20 int conta(elem *, int n) -9 NULL 20

Esercizio 3 Fondamenti di Informatica - Esercitazione n.13 3 Scrivere un funzione ricorsiva che conta il numero di elementi che hanno camo info minore di un numero intero n assato alla funzione int conta(elem *, int n) 4 chiamata conta(=null, n=4) il untatore è NULL, CASO BASE: Ritorno 0, non ci sono elementi minori di n=4 3 10 12 20-9 NULL NULL