DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE. La Ricorsione. Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 29 Maggio 2014

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE. La Ricorsione. Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 29 Maggio 2014"

Transcript

1 La Ricorsione Marco D. Santambrogio Ver. aggiornata al 29 Maggio 2014

2 Obiettivi La ricorsione Ricordate la sigla GNU GNU = GNU is Not Unix GNU = GNU is Not Unix GNU = GNU is Not Unix GNU = GNU is Not GNU = GNU 2

3 L induzione matematica Si usa nelle definizioni e nelle dimostrazioni Definizione: numeri pari 1) 0 è un numero pari 2) se n è un numero pari anche n+2 è un numero pari Dimostrazione: dimostro che (2n) 2 =4n 2 (distributività della potenza di 2 risp. alla moltiplicazione) 1) n=1 : vero 2) suppongo sia vero per k, lo dimostro per k+1: (2(k+1)) 2 =(2k+2) 2 =(2k) 2 +8k+4= (per hp di induzione) 4k 2 +8k+4 = 4(k 2 +2k+1) = 4(k+1) 2 1) è il passo base, 2) è il passo di induzione 3

4 Il tacchino induttivista Un tacchino induttivista viene allevato in una fattoria del Maine (USA) Ogni giorno alle 7am Mr Jones porta il cibo al tacchino induttivista Il tacchino segue il seguente ragionamento: Il giorno 1 Mr Jones mi ha portato il 7am Ieri era il giorno n e Mr Jones mi ha portato il 7am Oggi è il giorno n+1 ed il cibo è arrivato Tutti i 7am Mr Jones mi porterà il cibo Thanksgiving 4

5 Iterazione e ricorsione Sono i due concetti informatici che nascono dal concetto di induzione 5

6 Iterazione L iterazione si realizza mediante la tecnica del ciclo Il calcolo del fattoriale: 0!=1 n!=n(n-1)(n-2).1 (realizzo un ciclo) 6

7 La ricorsione: definizione Dal latino re-currere ricorrere, fare ripetutamente la stessa azione In informatica: si tratta di procedure/funzioni che richiamano se stesse Il concetto di ricorsione viene usato nel contesto di: algoritmi strutture dati 7

8 8 Scopo della programmazione ricorsiva Lo scopo è quelo di risolvere un problema facendo riferimento allo stesso problma su scala ridotta La condizione di terminazione avviene quando si identifica uno o più casi semplici con soluzione immediata La struttura di un algoritmo ricorsivo è il seguente if (è il caso semplice) risolvilo else usa la ricorsione su dati ridotti

9 La ricorsione: che cos è? Ricorsione indiretta: Un sottoprogramma P chiama un sottoprogramma Q Q a sua volta chiama un terzo R, R chiama nuovamente P Ricorsione diretta Un sottoprogramma P chiama se stesso durante la propria esecuzione 9

10 10 Un esempio classico Individuare, in un gruppo di palline l unica pallina di peso maggiore delle altre facendo uso di una bilancia a basculla Per semplicità: il numero di palline sia una potenza di 3 Algoritmo Pesate: Se il gruppo di palline consiste in una sola pallina, allora essa è banalmente la pallina cercata, altrimenti procedi come segue. Dividi il gruppo di palline in tre e confronta due dei tre sottogruppi. Se i due gruppi risultano di peso uguale scarta entrambi, altrimenti scarta il gruppo non pesato e quello risultato di peso minore. Applica l algoritmo Pesate al gruppo rimanente.

11 Altri esempi di ricorsione La sommatoria di una sequenza di numeri Fattoriale: Fact(n)=n*Fact(n-1) Fact(0)=1 In arte e non solo 11

12 Il calcolo del fattoriale In matematica, se n è un intero positivo, si definisce n fattoriale e si indica con n! il prodotto dei primi n numeri interi positivi minori o uguali di quel numero 12

13 Il main del fattoriale 13

14 Il fattoriale iterativo 14

15 Definizione ricorsiva del fattoriale 1) n!=1 se n=0 2) n!= n*(n-1)! se n>0 Riduce il calcolo a un calcolo più semplice Ha senso perché si basa sempre sul fattoriale del numero più piccolo, che io conosco Ha senso perché si arriva a un punto in cui non è più necessario riusare la def. 2) e invece si usa la 1) 1) è il passo base, 2) è il passo di ricorsione 15

16 Esempio di traccia Calcoliamo il fattoriale di 4: 4=0? No: calcoliamo il fattoriale di 3 e molt. per 4 3=0? No: calcoliamo il fattoriale di 2 e molt. per 3 2=0? No: calcoliamo il fattoriale di 1 e molt. per 2 1=0? No: calcoliamo il fattoriale di 0 e molt. per 1 0=0? Si: il fattoriale di 0 è 1. Risaliamo: il fattoriale di 1 è 1 per il fattoriale di 0 cioè 1*1=1 il fattoriale di 2 è 2 per il fattoriale di 1 cioè 2*1=2 il fattoriale di 3 è 3 per il fattoriale di 2 cioè 3*2=6 il fattoriale di 4 è 4 per il fattoriale di 3 cioè 4*6=24 16

17 Il fattoriale ricorsivo Calcolo del Fattoriale in modo ricorsivo: Fact(n)=n*Fact(n-1) Fact(0)=1 fat= fat= 1 1 FattRic(0) FattRic(1) fat= fat= n = FattRic(2) FattRic(3) main 17

18 Moltiplicazione Ideare un procedimento ricorsivo per calcolare il prodotto di due interi Nota: A*1=A; A*B = A + A*(B-1) int MulRic(int a, int b) { int ris; if (b == 1) ris = a; else ris = a + MulRic(a,b 1); return ris; } 18

19 Fibonacci Leonardo Fibonacci Matematico italiano Compie numerosi viaggi e assimila le conoscenze matematiche del mondo arabo, Nel 1202 pubblica: il Liber abaci Con Liber abaci si propose di diffondere nel mondo scientifico occidentale le regole di calcolo note agli Arabi il sistema decimale 19

20 Il problema dei conigli Un tale mise una coppia di conigli in un luogo completamente circondato da un muro, per scoprire quante coppie di conigli discendessero da questa in un anno: per natura le coppie di conigli generano ogni mese un'altra coppia e cominciano a procreare a partire dal secondo mese dalla nascita. L. Fibonacci da Liber Abaci 20

21 I numeri di Fibonacci Idea di base 1) fib(n)=1 se n=0 opp. n=1 2) fib(n)= fib(n-1) + fib(n-2) se n>1 21

22 Successione di Fibonacci Fib(n)=Fib(n-1)+Fib(n-2) Fib(0)=0; Fib(1)=1; int fibric (int n) { } int ris; if (n == 0) ris = 0; else if (n == 1) ris = 1; else ris = fibric(n 1) + fibric(n 2); return ris; 22

23 Un problema interessante: La torre di Brahma 23

24 La leggenda Narra la leggenda che all'inizio dei tempi, Brahma portò nel grande tempio di Benares, sotto la cupola d'oro che si trova al centro del mondo, tre colonnine di diamante e sessantaquattro dischi d'oro, collocati su una di queste colonnine in ordine decrescente, dal più piccolo in alto, al più grande in basso. E' la sacra Torre di Brahma che vede impegnati, giorno e notte, i sacerdoti del tempio nel trasferimento della torre di dischi dalla prima alla terza colonnina. Essi non devono contravvenire alle regole precise, imposte da Brahma stesso, che richiedono di spostare soltanto un disco alla volta e che non ci sia mai un disco sopra uno più piccolo. Quando i sacerdoti avranno completato il loro lavoro e tutti i dischi saranno riordinati sulla terza colonnina, la torre e il tempio crolleranno e sarà la fine del mondo. 24

25 Le torri di Hanoi Problema: spostare tutti i dischi dalla torre A alla torre B (usando la torre C come supporto intermedio ) in modo che si trovino nello stesso ordine 25

26 Le torri di Hanoi Scriveremo una funzione ricorsiva che prende come parametro il numero del disco più grande che vogliamo spostare (da 0 a 5 come nel disegno) La funzione prenderà anche tre parametri che indicano: da quale asta vogliamo partire (source), a quale asta vogliamo arrivare (dest), l altra asta, che possiamo usare come supporto temporaneo (spare). 26

27 L idea di base Voglio spostare n anelli dal piolo sorgente, a quello destinazione, usando come appoggio il piolo ausiliario Devo quindi prima spostare n - 1 anelli dal sorgente all'ausiliario, usando come appoggio il piolo destinazione Poi sposto l'unico anello rimasto dal sorgente al piolo destinazione Infine sposto gli n - 1 anelli che si trovano sull'ausilliario all'anello destinazione.. 27

28 L uso della ricorsione Quando si spostano gli n - 1 anelli la funzione hanoi richiama se stessa, cioè effettua una chiamata ricorsiva, semplificando però il problema perché bisogna spostare un numero di anelli inferiore. In pratica, con la ricorsione il problema viene continuamente ridotto di complessità fino alla soluzione banale in cui rimane solo un anello, che viene semplicemente spostato nel piolo destinazione. 28

29 Le torri di Hanoi: strategia Ridurremo il problema a quello di spostare 5 dischi dalla torre C alla torre B, dopo che il disco 5 è stato già messo nella posizione giusta 29

30 Le torri di Hanoi: pseudocodice FUNCTION MoveTower(disk, source, dest, spare): IF disk == 0, THEN: move disk from source to dest ELSE: MoveTower(disk - 1, source, spare, dest) /* (Passo 1) */ move disk from source to dest // / * (Passo 2) */ MoveTower(disk - 1, spare, dest, source) // / * (Passo 3) */ END IF Nota: l algoritmo aggiunge un caso base: quando il disco è il più piccolo (il numero 0). In questo caso possiamo muoverlo direttamente perché non ne ha altri sopra. Negli altri casi, seguiamo la procedura descritta per il disco 5. 30

31 Codice void hanoi(int n, int sorgente, int destinazione, int aux) { if (n==1) } printf("sposto da %d a %d.\n",sorgente, destinazione); else{ } hanoi(n - 1, sorgente, aux, destinazione); hanoi(1, sorgente, destinazione, aux); hanoi(n - 1, aux, destinazione, sorgente); 31

32 Esercizio: Massimo di un array Ideare un procedimento ricorsivo per calcolare il massimo di un array di interi Idea: max(vect[0 : N]) =max(vect[0],max(vect[1 : N])) int max(int *array, int n){ int maxs; if (n==1) return array[0]; /*Caso Array 1 elemento*/ if (n==2){ /*Caso Base*/ if (array[0]>array[1]) return array[0]; else return array[1]; } maxs = max(&array[1],n-1); /*Risolvi Problema Ridotto*/ if (array[0]>maxs)return array[0]; else return maxs; } 32

33 Fonti per lo studio + Credits Fonti per lo studio Introduzione alla programmazione in MATLAB, A.Campi, E.Di Nitto, D.Loiacono, A.Morzenti, P.Spoletini, Ed.Esculapio Capitolo 4 Particolare attenzione al 4.5 Credits Prof. A. Morzenti Gianluca Palermo 33

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE. La Ricorsione. Marco D. Santambrogio Ver. aggiornata al 12 Maggio 2016

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE. La Ricorsione. Marco D. Santambrogio Ver. aggiornata al 12 Maggio 2016 La Ricorsione Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 12 Maggio 2016 Riscaldiamoci subito un po 2 Riscaldiamoci subito un po 3 Obiettivi Induzione matematica Iterazione Cosa

Dettagli

Iterazione Vs Ricorsione

Iterazione Vs Ricorsione Iterazione Vs Ricorsione Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 24 Agosto 2015 Obiettivi Induzione matematica Iterazione Cosa significa ricorsivo Iterazione Vs ricorsione

Dettagli

Iterazione Vs Ricorsione

Iterazione Vs Ricorsione Iterazione Vs Ricorsione Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 7 Gennaio 2014 Nota per i 7 Cosa: Prova colpo-singolo No libri, e/o appunti 1 exe in C in 30 Quando Domani:

Dettagli

Ricorsione. (da lucidi di Marco Benedetti)

Ricorsione. (da lucidi di Marco Benedetti) Ricorsione (da lucidi di Marco Benedetti) Funzioni ricorsive Dal punto di vista sintattico, siamo in presenza di una funzione ricorsiva quando all interno della definizione di una funzione compaiono una

Dettagli

AA 2006-07 LA RICORSIONE

AA 2006-07 LA RICORSIONE PROGRAMMAZIONE AA 2006-07 LA RICORSIONE AA 2006-07 Prof.ssa A. Lanza - DIB 1/18 LA RICORSIONE Il concetto di ricorsione nasce dalla matematica Una funzione matematica è definita ricorsivamente quando nella

Dettagli

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE. Script. Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 13 Agosto 2014

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE. Script. Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 13 Agosto 2014 Script Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 13 Agosto 2014 1 Obiettivi Script 2 Script (m-file) Uno script è un file di testo contenente una sequenza di comandi MATLAB

Dettagli

La ricorsione. Politecnico di Milano Sede di Cremona

La ricorsione. Politecnico di Milano Sede di Cremona La ricorsione Politecnico di Milano Sede di Cremona Gianpaolo Cugola Dipartimento di Elettronica e Informazione cugola@elet.polimi.it http://www.elet.polimi.it/~cugola Definizioni ricorsive Sono comuni

Dettagli

Lab 6 Info B. Luca M. Cassano Sadegh M. Astaneh Matteo Papini

Lab 6 Info B. Luca M. Cassano Sadegh M. Astaneh Matteo Papini Lab 6 Info B Luca M. Cassano luca.cassano@polimi.it Sadegh M. Astaneh sadegh.astaneh@unimi.it Matteo Papini matteo.papini@polimi.it Lab 6: Obiettivi Introduzione a Matlab/Octave Grafici Funzioni Ricorsive

Dettagli

RICORSIONE. Informatica B - A.A. 2013/2014

RICORSIONE. Informatica B - A.A. 2013/2014 RICORSIONE Informatica B - A.A. 2013/2014 RICORSIONE Che cos è la ricorsione? Un sottoprogramma P richiama se stesso (ricorsione diretta) Un sottoprogramma P richiama un altro sottoprogramma Q che comporta

Dettagli

Intelligenza Artificiale

Intelligenza Artificiale Intelligenza Artificiale Esercizi e Domande di Esame Tecniche di Ricerca e Pianificazione Esercizi Griglia Si consideri un ambiente costituito da una griglia n n in cui si muove un agente che può spostarsi

Dettagli

Il principio di induzione e i numeri naturali.

Il principio di induzione e i numeri naturali. Il principio di induzione e i numeri naturali. Il principio di induzione è un potente strumento di dimostrazione, al quale si ricorre ogni volta che si debba dimostrare una proprietà in un numero infinito

Dettagli

RICORSIVITA. Vediamo come si programma la soluzione ricorsiva al problema precedente: Poniamo S 1 =1 S 2 =1+2 S 3 =1+2+3

RICORSIVITA. Vediamo come si programma la soluzione ricorsiva al problema precedente: Poniamo S 1 =1 S 2 =1+2 S 3 =1+2+3 RICORSIVITA 1. Cos è la ricorsività? La ricorsività è un metodo di soluzione dei problemi che consiste nell esprimere la soluzione relativa al caso n in funzione della soluzione relativa al caso n-1. La

Dettagli

Esercitazione 7. Procedure e Funzioni

Esercitazione 7. Procedure e Funzioni Esercitazione 7 Procedure e Funzioni Esercizio Scrivere un programma che memorizza in un array di elementi di tipo double le temperature relative al mese corrente e ne determina la temperatura massima,

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica Modulo T3 1-Sottoprogrammi 1 Prerequisiti Tecnica top-down Programmazione elementare 2 1 Introduzione Lo scopo di questa Unità è utilizzare la metodologia di progettazione top-down

Dettagli

Funzioni in C. Violetta Lonati

Funzioni in C. Violetta Lonati Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica Funzioni - in breve: Funzioni Definizione di funzioni

Dettagli

Introduzione alla Ricorsione

Introduzione alla Ricorsione Introduzione alla Corso di Informatica A Vito Perrone Indice La formulazione in termini ricorsivi di problemi e algoritmi La ricorsione come strumento di programmazione L esecuzione dei sottoprogrammi

Dettagli

Esercizi Capitolo 2 - Analisi di Algoritmi

Esercizi Capitolo 2 - Analisi di Algoritmi Esercizi Capitolo - Analisi di Algoritmi Alberto Montresor 19 Agosto, 014 Alcuni degli esercizi che seguono sono associati alle rispettive soluzioni. Se il vostro lettore PDF lo consente, è possibile saltare

Dettagli

4 3 4 = 4 x 10 2 + 3 x 10 1 + 4 x 10 0 aaa 10 2 10 1 10 0

4 3 4 = 4 x 10 2 + 3 x 10 1 + 4 x 10 0 aaa 10 2 10 1 10 0 Rappresentazione dei numeri I numeri che siamo abituati ad utilizzare sono espressi utilizzando il sistema di numerazione decimale, che si chiama così perché utilizza 0 cifre (0,,2,3,4,5,6,7,8,9). Si dice

Dettagli

Ricorsione. Corso di Fondamenti di Informatica

Ricorsione. Corso di Fondamenti di Informatica Dipartimento di Informatica e Sistemistica Antonio Ruberti Sapienza Università di Roma Ricorsione Corso di Fondamenti di Informatica Laurea in Ingegneria Informatica (Canale di Ingegneria delle Reti e

Dettagli

10 - Programmare con gli Array

10 - Programmare con gli Array 10 - Programmare con gli Array Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it

Dettagli

Algoritmi di Ricerca. Esempi di programmi Java

Algoritmi di Ricerca. Esempi di programmi Java Fondamenti di Informatica Algoritmi di Ricerca Esempi di programmi Java Fondamenti di Informatica - D. Talia - UNICAL 1 Ricerca in una sequenza di elementi Data una sequenza di elementi, occorre verificare

Dettagli

Concetto di Funzione e Procedura METODI in Java

Concetto di Funzione e Procedura METODI in Java Fondamenti di Informatica Concetto di Funzione e Procedura METODI in Java Fondamenti di Informatica - D. Talia - UNICAL 1 Metodi e Sottoprogrammi Mentre in Java tramite le classi e gli oggetti è possibile

Dettagli

Proof. Dimostrazione per assurdo. Consideriamo l insieme complementare di P nell insieme

Proof. Dimostrazione per assurdo. Consideriamo l insieme complementare di P nell insieme G Pareschi Principio di induzione Il Principio di Induzione (che dovreste anche avere incontrato nel Corso di Analisi I) consente di dimostrare Proposizioni il cui enunciato è in funzione di un numero

Dettagli

Comparatori. Comparatori di uguaglianza

Comparatori. Comparatori di uguaglianza Comparatori Scopo di un circuito comparatore é il confronto tra due codifiche binarie. Il confronto può essere effettuato per verificare l'uguaglianza oppure una relazione d'ordine del tipo "maggiore",

Dettagli

INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI

INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI Prima di riuscire a scrivere un programma, abbiamo bisogno di conoscere un metodo risolutivo, cioè un metodo che a partire dai dati di ingresso fornisce i risultati attesi.

Dettagli

Programmazione I - Laboratorio

Programmazione I - Laboratorio Programmazione I - Laboratorio Esercitazione 2 - Funzioni Gianluca Mezzetti 1 Paolo Milazzo 2 1. Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ mezzetti mezzetti di.unipi.it 2.

Dettagli

Capitolo 4.2. Analisi tecnica: Fibonacci

Capitolo 4.2. Analisi tecnica: Fibonacci 1 Capitolo 4.2 Analisi tecnica: Fibonacci 0 Contenuti ANALISI TECNICA: FIBONACCI L analisi di Fibonacci mira a identificare i potenziali livelli di supporto e di resistenza futuri basati sui trend dei

Dettagli

Uso di JUnit. Fondamenti di informatica Oggetti e Java. JUnit. Luca Cabibbo. ottobre 2012

Uso di JUnit. Fondamenti di informatica Oggetti e Java. JUnit. Luca Cabibbo. ottobre 2012 Fondamenti di informatica Oggetti e Java ottobre 2012 1 JUnit JUnit è uno strumento per assistere il programmatore Java nel testing JUnit consente di scrivere test di oggetti e classi Java i test sono

Dettagli

Non è un problema! Esperienze in atto per guardare senza timore il problema

Non è un problema! Esperienze in atto per guardare senza timore il problema Non è un problema! Esperienze in atto per guardare senza timore il problema Un po di storia Da sempre vi sono momenti in cui ciascun insegnante fa il punto sul percorso proposto ai suoi alunni e spesso

Dettagli

PROBLEMA DELLA RICERCA DI UN ELEMENTO IN UN ARRAY E ALGORITMI RISOLUTIVI

PROBLEMA DELLA RICERCA DI UN ELEMENTO IN UN ARRAY E ALGORITMI RISOLUTIVI PROBLEMA DELLA RICERCA DI UN ELEMENTO IN UN ARRAY E ALGORITMI RISOLUTIVI PROBLEMA DELLA RICERCA in termini generali: Dati in input un insieme S di elementi (numeri, caratteri, stringhe, ) e un elemento

Dettagli

UNA LEZIONE SUI NUMERI PRIMI: NASCE LA RITABELLA

UNA LEZIONE SUI NUMERI PRIMI: NASCE LA RITABELLA UNA LEZIONE SUI NUMERI PRIMI: NASCE LA RITABELLA Tutti gli anni, affrontando l argomento della divisibilità, trovavo utile far lavorare gli alunni sul Crivello di Eratostene. Presentavo ai ragazzi una

Dettagli

Sommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi.

Sommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi. Algoritmi 1 Sommario Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi. 2 Informatica Nome Informatica=informazione+automatica. Definizione Scienza che si occupa dell

Dettagli

Note su quicksort per ASD 2010-11 (DRAFT)

Note su quicksort per ASD 2010-11 (DRAFT) Note su quicksort per ASD 010-11 (DRAFT) Nicola Rebagliati 7 dicembre 010 1 Quicksort L algoritmo di quicksort è uno degli algoritmi più veloci in pratica per il riordinamento basato su confronti. L idea

Dettagli

APPUNTI DI MATEMATICA LE FRAZIONI ALGEBRICHE ALESSANDRO BOCCONI

APPUNTI DI MATEMATICA LE FRAZIONI ALGEBRICHE ALESSANDRO BOCCONI APPUNTI DI MATEMATICA LE FRAZIONI ALGEBRICHE ALESSANDRO BOCCONI Indice 1 Le frazioni algebriche 1.1 Il minimo comune multiplo e il Massimo Comun Divisore fra polinomi........ 1. Le frazioni algebriche....................................

Dettagli

Fondamenti dell Informatica Ricorsione e Iterazione Simona Ronchi Della Rocca (dal testo: Kfoury, Moll and Arbib, cap.5.2)

Fondamenti dell Informatica Ricorsione e Iterazione Simona Ronchi Della Rocca (dal testo: Kfoury, Moll and Arbib, cap.5.2) Fondamenti dell Informatica Ricorsione e Iterazione Simona Ronchi Della Rocca (dal testo: Kfoury, Moll and Arbib, cap.5.2) Definiamo innanzitutto una relazione d ordine tra le funzioni. Siano φ e ψ funzioni

Dettagli

Matematica generale CTF

Matematica generale CTF Successioni numeriche 19 agosto 2015 Definizione di successione Monotonìa e limitatezza Forme indeterminate Successioni infinitesime Comportamento asintotico Criterio del rapporto per le successioni Definizione

Dettagli

Prof. Giuseppe Chiumeo. Avete già studiato che qualsiasi algoritmo appropriato può essere scritto utilizzando soltanto tre strutture di base:

Prof. Giuseppe Chiumeo. Avete già studiato che qualsiasi algoritmo appropriato può essere scritto utilizzando soltanto tre strutture di base: LA STRUTTURA DI RIPETIZIONE La ripetizione POST-condizionale La ripetizione PRE-condizionale INTRODUZIONE (1/3) Avete già studiato che qualsiasi algoritmo appropriato può essere scritto utilizzando soltanto

Dettagli

[MANUALE VISUAL BASIC SCUOLA24ORE PROF.SSA PATRIZIA TARANTINO] 14 dicembre 2008

[MANUALE VISUAL BASIC SCUOLA24ORE PROF.SSA PATRIZIA TARANTINO] 14 dicembre 2008 Se devo memorizzare più valori che sono in qualche modo parenti dal punto di vista logico, posso usare il concetto di vettore di variabili (array). Ad esempio, se devo memorizzare le temperature di tutti

Dettagli

APPUNTI SU PROBLEMI CON CALCOLO PERCENTUALE

APPUNTI SU PROBLEMI CON CALCOLO PERCENTUALE APPUNTI SU PROBLEMI CON CALCOLO PERCENTUALE 1. Proporzionalità diretta e proporzionalità inversa Analizziamo le seguenti formule Peso Lordo = Peso Netto + Tara Ricavo = Utile + Costo Rata = Importo + Interesse

Dettagli

Funzioni - Parte II. 1 Composizione di Funzioni. Antonio Lazzarini. Prerequisiti: Funzioni (Parte I).

Funzioni - Parte II. 1 Composizione di Funzioni. Antonio Lazzarini. Prerequisiti: Funzioni (Parte I). Funzioni - Parte II Antonio Lazzarini Prerequisiti: Funzioni (Parte I). 1 Composizione di Funzioni Sappiamo che é possibile denire diverse operazioni ra i numeri: addizione, sottrazione, moltiplicazione,

Dettagli

Iniziamo con un esercizio sul massimo comun divisore: Esercizio 1. Sia d = G.C.D.(a, b), allora:

Iniziamo con un esercizio sul massimo comun divisore: Esercizio 1. Sia d = G.C.D.(a, b), allora: Iniziamo con un esercizio sul massimo comun divisore: Esercizio 1. Sia d = G.C.D.(a, b), allora: G.C.D.( a d, b d ) = 1 Sono state introdotte a lezione due definizioni importanti che ricordiamo: Definizione

Dettagli

Esponenziali elogaritmi

Esponenziali elogaritmi Esponenziali elogaritmi Potenze ad esponente reale Ricordiamo che per un qualsiasi numero razionale m n prendere n>0) si pone a m n = n a m (in cui si può sempre a patto che a sia un numero reale positivo.

Dettagli

Programmazione dinamica

Programmazione dinamica Capitolo 6 Programmazione dinamica 6.4 Il problema della distanza di edit tra due stringhe x e y chiede di calcolare il minimo numero di operazioni su singoli caratteri (inserimento, cancellazione e sostituzione)

Dettagli

II.f. Altre attività sull euro

II.f. Altre attività sull euro Altre attività sull euro II.f È consigliabile costruire modelli in carta o cartoncino di monete e banconote, e farli usare ai bambini in varie attività di classe fin dal primo o al più dal secondo anno.

Dettagli

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica Corso di Laurea Ingegneria Informatica Fondamenti di Informatica Dispensa E01 Esempi di programmi A. Miola Ottobre 2011 1 Contenuti Vediamo in questa lezione alcuni primi semplici esempi di applicazioni

Dettagli

Parte 1. Vettori di bit - AA. 2012/13 1.1

Parte 1. Vettori di bit - AA. 2012/13 1.1 1.1 Parte 1 Vettori di bit 1.2 Notazione posizionale Ogni cifra assume un significato diverso a seconda della posizione in cui si trova Rappresentazione di un numero su n cifre in base b: Posizioni a n

Dettagli

Lezione 8. La macchina universale

Lezione 8. La macchina universale Lezione 8 Algoritmi La macchina universale Un elaboratore o computer è una macchina digitale, elettronica, automatica capace di effettuare trasformazioni o elaborazioni su i dati digitale= l informazione

Dettagli

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo.

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo. DALLE PESATE ALL ARITMETICA FINITA IN BASE 2 Si è trovato, partendo da un problema concreto, che con la base 2, utilizzando alcune potenze della base, operando con solo addizioni, posso ottenere tutti

Dettagli

Esercizi Capitolo 6 - Alberi binari di ricerca

Esercizi Capitolo 6 - Alberi binari di ricerca Esercizi Capitolo 6 - Alberi binari di ricerca Alberto Montresor 23 settembre 200 Alcuni degli esercizi che seguono sono associati alle rispettive soluzioni. Se il vostro lettore PDF lo consente, è possibile

Dettagli

UNIVERSITÀ DEGLI STUDI DI TERAMO

UNIVERSITÀ DEGLI STUDI DI TERAMO UNIVERSITÀ DEGLI STUDI DI TERAMO CORSO DI LAUREA IN ECONOMIA BANCARIA FINANZIARIA ED ASSICURATIVA (Classe 7) Corso di Matematica per l Economia (Prof. F. Eugeni) TEST DI INGRESSO Teramo, ottobre 00 SEZIONE

Dettagli

Lezione 10: Il problema del consumatore: Preferenze e scelta ottimale

Lezione 10: Il problema del consumatore: Preferenze e scelta ottimale Corso di Scienza Economica (Economia Politica) prof. G. Di Bartolomeo Lezione 10: Il problema del consumatore: Preferenze e scelta ottimale Facoltà di Scienze della Comunicazione Università di Teramo Scelta

Dettagli

Epoca k Rata Rk Capitale Ck interessi Ik residuo Dk Ek 0 S 0 1 C1 Ik=i*S Dk=S-C1. n 0 S

Epoca k Rata Rk Capitale Ck interessi Ik residuo Dk Ek 0 S 0 1 C1 Ik=i*S Dk=S-C1. n 0 S L AMMORTAMENTO Gli ammortamenti sono un altra apllicazione delle rendite. Il prestito è un operazione finanziaria caratterizzata da un flusso di cassa positivo (mi prendo i soldi in prestito) seguito da

Dettagli

Ricerca Automatica. Esercitazione 3. Ascensore. Ascensore. Ascensore

Ricerca Automatica. Esercitazione 3. Ascensore. Ascensore. Ascensore Ascensore Ricerca Automatica Esercitazione In un grattacielo ci sono coppie formate da marito e moglie. Il cancello delle scale viene chiuso e l unico modo per scendere è con l ascensore che può portare

Dettagli

INFORMATICA 1 L. Mezzalira

INFORMATICA 1 L. Mezzalira INFORMATICA 1 L. Mezzalira Possibili domande 1 --- Caratteristiche delle macchine tipiche dell informatica Componenti hardware del modello funzionale di sistema informatico Componenti software del modello

Dettagli

RICORSIONE - schema ricorsivo (o induttivo) si esegue l'azione S, su un insieme di dati D, mediante eventuale esecuzione di

RICORSIONE - schema ricorsivo (o induttivo) si esegue l'azione S, su un insieme di dati D, mediante eventuale esecuzione di RICORSIONE - schema ricorsivo (o induttivo) si esegue l'azione S, su un insieme di dati D, mediante eventuale esecuzione di esempio CERCA 90 NEL SACCHETTO = estrai num Casi num 90 Effetti CERCA 90 NEL

Dettagli

Introduzione alla tecnica di Programmazione Dinamica

Introduzione alla tecnica di Programmazione Dinamica Universitá degli Studi di Salerno Corso di Algoritmi Prof. Ugo Vaccaro Anno Acc. 2014/15 p. 1/37 Sommario della lezione Introduzione alla tecnica di Programmazione Dinamica Esempio di applicazione n. 1:

Dettagli

Dispense di Informatica per l ITG Valadier

Dispense di Informatica per l ITG Valadier La notazione binaria Dispense di Informatica per l ITG Valadier Le informazioni dentro il computer All interno di un calcolatore tutte le informazioni sono memorizzate sottoforma di lunghe sequenze di

Dettagli

Introduzione al MATLAB c Parte 2

Introduzione al MATLAB c Parte 2 Introduzione al MATLAB c Parte 2 Lucia Gastaldi Dipartimento di Matematica, http://dm.ing.unibs.it/gastaldi/ 18 gennaio 2008 Outline 1 M-file di tipo Script e Function Script Function 2 Costrutti di programmazione

Dettagli

G3. Asintoti e continuità

G3. Asintoti e continuità G3 Asintoti e continuità Un asintoto è una retta a cui la funzione si avvicina sempre di più senza mai toccarla Non è la definizione formale, ma sicuramente serve per capire il concetto di asintoto Nei

Dettagli

ESERCIZIO 1 (b) Dove è memorizzato il numero del primo blocco del file? Insieme agli altri attributi del file, nella cartella che contiene il file.

ESERCIZIO 1 (b) Dove è memorizzato il numero del primo blocco del file? Insieme agli altri attributi del file, nella cartella che contiene il file. ESERCIZIO 1 Si consideri un hard disk formattato la cui memoria è suddivisa in 16 blocchi (numerati da 0 a 15). Si supponga che sull hard disk sia memorizzato un unico file, contenuto, nell ordine, nei

Dettagli

LA TRASMISSIONE DELLE INFORMAZIONI QUARTA PARTE 1

LA TRASMISSIONE DELLE INFORMAZIONI QUARTA PARTE 1 LA TRASMISSIONE DELLE INFORMAZIONI QUARTA PARTE 1 I CODICI 1 IL CODICE BCD 1 Somma in BCD 2 Sottrazione BCD 5 IL CODICE ECCESSO 3 20 La trasmissione delle informazioni Quarta Parte I codici Il codice BCD

Dettagli

Esercizi per il corso di Algoritmi e Strutture Dati

Esercizi per il corso di Algoritmi e Strutture Dati 1 Esercizi per il corso di Algoritmi e Strutture Dati Esercizi sulla Tecnica Divide et Impera N.B. Tutti gli algoritmi vanno scritti in pseudocodice (non in Java, né in C++, etc. ). Di tutti gli algoritmi

Dettagli

Polli e conigli. problemi Piano cartesiano. Numeri e algoritmi Sistemi e loro. geometrica. Relazioni e funzioni Linguaggio naturale e

Polli e conigli. problemi Piano cartesiano. Numeri e algoritmi Sistemi e loro. geometrica. Relazioni e funzioni Linguaggio naturale e Polli e conigli Livello scolare: primo biennio Abilità Interessate Calcolo di base - sistemi Risolvere per via grafica e algebrica problemi che si formalizzano con equazioni. Analizzare semplici testi

Dettagli

Fondamenti di Informatica Ingegneria Clinica Lezione 15/10/2009. Prof. Raffaele Nicolussi

Fondamenti di Informatica Ingegneria Clinica Lezione 15/10/2009. Prof. Raffaele Nicolussi Fondamenti di Informatica Ingegneria Clinica Lezione 15/10/2009 Prof. Raffaele Nicolussi FUB - Fondazione Ugo Bordoni Via B. Castiglione 59-00142 Roma Docente Raffaele Nicolussi rnicolussi@fub.it Lezioni

Dettagli

Plate Locator Riconoscimento Automatico di Targhe

Plate Locator Riconoscimento Automatico di Targhe Progetto per Laboratorio di Informatica 3 - Rimotti Daniele, Santinelli Gabriele Plate Locator Riconoscimento Automatico di Targhe Il programma plate_locator.m prende come input: l immagine della targa

Dettagli

Capitolo 2. Operazione di limite

Capitolo 2. Operazione di limite Capitolo 2 Operazione di ite In questo capitolo vogliamo occuparci dell operazione di ite, strumento indispensabile per scoprire molte proprietà delle funzioni. D ora in avanti riguarderemo i domini A

Dettagli

12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP)

12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP) 12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP) Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica,

Dettagli

GEOMETRIA DELLE MASSE

GEOMETRIA DELLE MASSE 1 DISPENSA N 2 GEOMETRIA DELLE MASSE Si prende in considerazione un sistema piano, ossia giacente nel pian x-y. Un insieme di masse posizionato nel piano X-Y, rappresentato da punti individuati dalle loro

Dettagli

Una funzione è detta ricorsiva se chiama, direttamente o indirettamente, se stessa. In C tutte le funzioni possono essere usate ricorsivamente.

Una funzione è detta ricorsiva se chiama, direttamente o indirettamente, se stessa. In C tutte le funzioni possono essere usate ricorsivamente. Ricorsione Funzioni ricorsive Una funzione è detta ricorsiva se chiama, direttamente o indirettamente, se stessa. In C tutte le funzioni possono essere usate ricorsivamente. Un esempio di funzione ricorsiva

Dettagli

Appunti sulla Macchina di Turing. Macchina di Turing

Appunti sulla Macchina di Turing. Macchina di Turing Macchina di Turing Una macchina di Turing è costituita dai seguenti elementi (vedi fig. 1): a) una unità di memoria, detta memoria esterna, consistente in un nastro illimitato in entrambi i sensi e suddiviso

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica Modulo T Scorrimento-Rotazione-Ricerca Prerequisiti Programmazione elementare Conoscenza ed uso di vettori Introduzione Lo scopo di questa Unità è approfondire il concetto di vettore

Dettagli

Appunti di Sistemi Elettronici

Appunti di Sistemi Elettronici Prof.ssa Maria Rosa Malizia 1 LA PROGRAMMAZIONE La programmazione costituisce una parte fondamentale dell informatica. Infatti solo attraverso di essa si apprende la logica che ci permette di comunicare

Dettagli

Algoritmi e Strutture Dati & Laboratorio di Algoritmi e Programmazione

Algoritmi e Strutture Dati & Laboratorio di Algoritmi e Programmazione Algoritmi e Strutture Dati & Laboratorio di Algoritmi e Programmazione Esercizi II parte Esercizio 1 Discutere la correttezza di ciascuna delle seguenti affermazioni. Dimostrare formalmente la validità

Dettagli

Realizzazione di Politiche di Gestione delle Risorse: i Semafori Privati

Realizzazione di Politiche di Gestione delle Risorse: i Semafori Privati Realizzazione di Politiche di Gestione delle Risorse: i Semafori Privati Condizione di sincronizzazione Qualora si voglia realizzare una determinata politica di gestione delle risorse,la decisione se ad

Dettagli

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 2

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 2 Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 2 Dispensa 10 Strutture collegate - 2 A. Miola Febbraio 2008 http://www.dia.uniroma3.it/~java/fondinf2/ Strutture collegate - 2 1 Contenuti!Strutture

Dettagli

Matematica - SMID : Programmazione Febbraio 2009 FOGLIO RISPOSTE

Matematica - SMID : Programmazione Febbraio 2009 FOGLIO RISPOSTE Matematica - SMID : Programmazione Febbraio 2009 FOGLIO RISPOSTE NOME: COGNOME: ============================================================== Esercizio 1 ci sono tante "righe"; non è detto servano tutte...

Dettagli

Simulazione traffico urbano

Simulazione traffico urbano Simulazione traffico urbano Si richiede di simulare il movimento del traffico in un ipotetico tratto di strada che viene percorso da delle automobili e che dei pedoni devono attraversare. La situazione

Dettagli

Librerie digitali. Video. Gestione di video. Caratteristiche dei video. Video. Metadati associati ai video. Metadati associati ai video

Librerie digitali. Video. Gestione di video. Caratteristiche dei video. Video. Metadati associati ai video. Metadati associati ai video Video Librerie digitali Gestione di video Ogni filmato è composto da più parti Video Audio Gestito come visto in precedenza Trascrizione del testo, identificazione di informazioni di interesse Testo Utile

Dettagli

Due algoritmi di ordinamento. basati sulla tecnica Divide et Impera: Mergesort e Quicksort

Due algoritmi di ordinamento. basati sulla tecnica Divide et Impera: Mergesort e Quicksort Due algoritmi di ordinamento basati sulla tecnica Divide et Impera: Mergesort e Quicksort (13 ottobre 2009, 2 novembre 2010) Ordinamento INPUT: un insieme di n oggetti a 1, a 2,, a n presi da un dominio

Dettagli

lo 2 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000

lo 2 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000 Capittol lo 2 Visualizzazione 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000 Nel primo capitolo sono state analizzate le diverse componenti della finestra di Word 2000: barra del titolo, barra dei menu,

Dettagli

Esempio: dest = parolagigante, lettere = PROVA dest (dopo l'invocazione di tipo pari ) = pprrlogvgante

Esempio: dest = parolagigante, lettere = PROVA dest (dopo l'invocazione di tipo pari ) = pprrlogvgante Esercizio 0 Scambio lettere Scrivere la funzione void scambiolettere(char *dest, char *lettere, int p_o_d) che modifichi la stringa destinazione (dest), sostituendone i caratteri pari o dispari (a seconda

Dettagli

Analisi e progettazione del software AbcBid studio di caso 6 dicembre 2007 REQUISITI ITERAZIONE 1

Analisi e progettazione del software AbcBid studio di caso 6 dicembre 2007 REQUISITI ITERAZIONE 1 REQUISITI ITERAZIONE 1 abcbid è un sistema per la gestione di vendite all asta. Esso deve gestire gli utenti (che vogliono vendere o acquistare oggetti), gli oggetti venduti all asta, le relative offerte,

Dettagli

Tecniche avanzate di sintesi di algoritmi: Programmazione dinamica Algoritmi greedy

Tecniche avanzate di sintesi di algoritmi: Programmazione dinamica Algoritmi greedy Tecniche avanzate di sintesi di algoritmi: Programmazione dinamica Algoritmi greedy Dr Maria Federico Programmazione dinamica Solitamente usata per risolvere problemi di ottimizzazione il problema ammette

Dettagli

Ins. Zanella Classe seconda. Problemi moltiplicativi

Ins. Zanella Classe seconda. Problemi moltiplicativi Ins. Zanella Classe seconda Problemi moltiplicativi FOGLI DI CARTA OGGI IN CLASSE SIAMO IN 23 ALUNNI. LA MAESTRA DA AD OGNI ALUNNO 3 FOGLI. DISEGNA QUESTA SITUAZIONE, IN MODO CHE SI CAPISCA QUANTI FOGLI

Dettagli

Algoritmi e Strutture Dati

Algoritmi e Strutture Dati Elementi di Programmazione Dinamica Maria Rita Di Berardini, Emanuela Merelli 1 1 Dipartimento di Matematica e Informatica Università di Camerino Il problema La CMC produce automobili in uno stabilimento

Dettagli

Architettura degli elaboratori Seconda esercitazione di laboratorio. Dr. Francesco Giacomini e Dr. Matteo Manzali Università degli Studi di Ferrara

Architettura degli elaboratori Seconda esercitazione di laboratorio. Dr. Francesco Giacomini e Dr. Matteo Manzali Università degli Studi di Ferrara Architettura degli elaboratori Seconda esercitazione di laboratorio Dr. Francesco Giacomini e Dr. Matteo Manzali Università degli Studi di Ferrara Linee generali (1) L esercitazione consiste nell implementare

Dettagli

LA MOLTIPLICAZIONE IN CLASSE SECONDA

LA MOLTIPLICAZIONE IN CLASSE SECONDA LA MOLTIPLICAZIONE IN CLASSE SECONDA Rossana Nencini, 2013 Le fasi del lavoro: 1. Proponiamo ai bambini una situazione reale di moltiplicazione: portiamo a scuola una scatola di biscotti (. ) e diamo la

Dettagli

Corso di Tecniche di Programmazione

Corso di Tecniche di Programmazione Corso di Tecniche di Programmazione Corsi di Laurea in Ingegneria Informatica ed Automatica Anno Accedemico 003/004 Proff. Giuseppe De Giacomo, Luca Iocchi, Domenico Lembo Dispensa : Algoritmi di Ordinamento

Dettagli

2. Spiegare brevemente qual è la funzione del compilatore e la sua importanza per il programmatore.

2. Spiegare brevemente qual è la funzione del compilatore e la sua importanza per il programmatore. 1 Esercizio 1 1. Immaginate di avere una calcolatore che invece che poter rappresentare i classici due valori per ogni bit (0/1) possa rappresentare 7 valori per ogni bit. (a) Quanti bit gli occorreranno

Dettagli

Prova di Laboratorio di Programmazione

Prova di Laboratorio di Programmazione Prova di Laboratorio di Programmazione 6 febbraio 015 ATTENZIONE: Non è possibile usare le classi del package prog.io del libro di testo. Oltre ai metodi richiesti in ciascuna classe, è opportuno implementare

Dettagli

e-dva - eni-depth Velocity Analysis

e-dva - eni-depth Velocity Analysis Lo scopo dell Analisi di Velocità di Migrazione (MVA) è quello di ottenere un modello della velocità nel sottosuolo che abbia dei tempi di riflessione compatibili con quelli osservati nei dati. Ciò significa

Dettagli

SISTEMI DI NUMERAZIONE E CODICI

SISTEMI DI NUMERAZIONE E CODICI SISTEMI DI NUMERAZIONE E CODICI Il Sistema di Numerazione Decimale Il sistema decimale o sistema di numerazione a base dieci usa dieci cifre, dette cifre decimali, da O a 9. Il sistema decimale è un sistema

Dettagli

Informatica 3. Informatica 3. LEZIONE 10: Introduzione agli algoritmi e alle strutture dati. Lezione 10 - Modulo 1. Importanza delle strutture dati

Informatica 3. Informatica 3. LEZIONE 10: Introduzione agli algoritmi e alle strutture dati. Lezione 10 - Modulo 1. Importanza delle strutture dati Informatica 3 Informatica 3 LEZIONE 10: Introduzione agli algoritmi e alle strutture dati Modulo 1: Perchè studiare algoritmi e strutture dati Modulo 2: Definizioni di base Lezione 10 - Modulo 1 Perchè

Dettagli

Traduzione e adattamento a cura di Gylas per Giochi Rari Versione 1.0 Luglio 2001. http://giochirari.it e-mail: giochirari@giochirari.

Traduzione e adattamento a cura di Gylas per Giochi Rari Versione 1.0 Luglio 2001. http://giochirari.it e-mail: giochirari@giochirari. Traduzione e adattamento a cura di Gylas per Giochi Rari Versione 1.0 Luglio 2001 http://giochirari.it e-mail: giochirari@giochirari.it NOTA. La presente traduzione non sostituisce in alcun modo il regolamento

Dettagli

Laboratorio di Ingegneria del software Sistema di controllo di un ascensore Requisisti preliminari

Laboratorio di Ingegneria del software Sistema di controllo di un ascensore Requisisti preliminari Laboratorio di Ingegneria del software Sistema di controllo di un ascensore Requisisti preliminari A.A. 2012 2013 1 Introduzione Questo documento raccoglie i requisiti preliminari per il software di controllo

Dettagli

ISTITUTO COMPRENSIVO MONTEGROTTO TERME SCUOLA PRIMARIA DISCIPLINA: MATEMATICA - CLASSE PRIMA OBIETTIVI DI APPRENDIMENTO

ISTITUTO COMPRENSIVO MONTEGROTTO TERME SCUOLA PRIMARIA DISCIPLINA: MATEMATICA - CLASSE PRIMA OBIETTIVI DI APPRENDIMENTO PRIMA DELLA DISCIPLINA: MATEMATICA - CLASSE PRIMA L alunno si muove con sicurezza nel calcolo scritto e mentale con i numeri naturali. Legge e comprende testi che coinvolgono aspetti logici e matematici.

Dettagli

I NUMERI DECIMALI. che cosa sono, come si rappresentano

I NUMERI DECIMALI. che cosa sono, come si rappresentano I NUMERI DECIMALI che cosa sono, come si rappresentano NUMERI NATURALI per contare bastano i numeri naturali N i numeri naturali cominciano con il numero uno e vanno avanti con la regola del +1 fino all

Dettagli

Introduzione alla programmazione in C

Introduzione alla programmazione in C Introduzione alla programmazione in C Testi Consigliati: A. Kelley & I. Pohl C didattica e programmazione B.W. Kernighan & D. M. Ritchie Linguaggio C P. Tosoratti Introduzione all informatica Materiale

Dettagli

Le funzioni in C. I programmi C sono costituiti da definizioni di variabili e funzioni.

Le funzioni in C. I programmi C sono costituiti da definizioni di variabili e funzioni. Le funzioni in C I programmi C sono costituiti da definizioni di variabili e funzioni. Una definizione di funzione ha il seguente formato: tipo-ritornato nome-funzione(lista-parametri) { dichiarazioni

Dettagli

1 Giochi a due, con informazione perfetta e somma zero

1 Giochi a due, con informazione perfetta e somma zero 1 Giochi a due, con informazione perfetta e somma zero Nel gioco del Nim, se semplificato all estremo, ci sono due giocatori I, II e una pila di 6 pedine identiche In ogni turno di gioco I rimuove una

Dettagli