Prolog: aritmetica e ricorsione

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Prolog: aritmetica e ricorsione"

Transcript

1 Capitolo 13 Prolog: aritmetica e ricorsione Slide: Aritmetica e ricorsione 13.1 Operatori aritmetici In logica non vi è alcun meccanismo per la valutazione di funzioni, che è fondamentale in un linguaggio di programmazione. In Prolog i numeri interi son rappresentati da termini come s(s(s(0)) dove s(0) indica semplicemente il successore del numero 0, dunque 1. Pertanto richiamando n volte il successore di 0, avremo denito il numero n. Com'è possibile dunque denire le operazioni aritmetiche? Facciamo due esempi: 1 somma(x, 0, X) 2 somma( s (X), Y, s (Z) ) : somma(x, Y, Z) Questo è un esempio di come denire la somma. Partiamo denendo la somma di un numero con 0, poi deniamo la somma di due numeri diversi da 0, cui ci si arriva per induzione. Vediamo invece come denire il prodotto: 1 prodotto (X, 0, 0 ) 2 prodotto (X, s (Y), Z) : prodotto (X, Y, W), somma(x, W, Z) Sebbene sia possibile denire le operazioni matematiche come abbiamo appena visto, tale approccio non è utilizzabile nella pratica, dunque Prolog fornisce dei predicati predeniti per la valutazione delle espressioni. Esistono dunque sia operatori binari che operatori unari, che vediamo qui riassunti: 1

2 2 CAPITOLO 13. PROLOG: ARITMETICA E RICORSIONE Unari Binari -, exp, log, ln, sin, cos, tg +, -, *, \, div, mod Per gli operatori binari, Prolog supporta sia la consueta notazione in- ssa, sia la notazione pressa, dunque le seguenti forme sono equivalenti: +(2, 3) Prolog riconosce come atomi sia i numeri interi, sia quelli in oating point Il predicato is is è uno speciale predicato predenito che consente di valutare le espressioni ed in un certo senso di assegnare dei valori a delle variabili. Vediamo subito come funziona. Intanto anche il predicato is accetta sia la notazione pressa, sia quella inssa: 1 i s (T, Expr ) è equivalente a: 1 T i s Expr Gli operatori sono: T: un atomo numerico o una variabile; Expr: un'espressione. L'espressione Expr viene valutata ed il risultato viene unicato con T. Alcuni esempi renderanno la trattazione più chiara: il seguente esempio unica la variabile X con il risultato della somma In X troveremo dunque il risultato di tale operazione: 1 : X i s yes X=5 l'esempio qui sotto è leggermente più elaborato. Calcola il valore di 2+3 assegnandolo alla variabile X1. Usa poi il valore di X1 per calcolarne l'esponenziale ed unicarlo con X2. Per ultimo calcola X1 X2 e lo unica con X:

3 13.2. IL PREDICATO IS 3 1 : X1 i s 2+3, X2 i s exp (X1), X i s X1 X2. 2 y e s X1=5 X2= X3= adesso utilizziamo invece di una variabile un atomo numerico e confrontiamolo con l'esito di un'operazione aritmetica: 1 : 0 i s yes in questo quarto esempio proviamo a vericare se due espressioni hanno lo stesso risultato: 1 : X i s 2+3, X i s no Dopo il primo goal, la variabile X ha il valore 5, dunque il secondo goal coincide con: 1 : 5 i s 4+1 riprendiamo l'esempio precedente, ma applichiamo una modica: 1 : X i s 2+3, X i s X+1. 2 no È importante notare che alla variabile X, nel secondo goal non viene assegnato il valore X+1 in quanto le variabili sono write-once. Il secondo goal equivale a chiedere se X è uguale a X+1 e chiaramente ciò provoca un fallimento. nel prossimo esempio proviamo ad eettuare un calcolo utilizzando però la variabile Y non istanziata: 1 : X i s Y 1. 2 no Come vediamo otteniamo un fallimento. essere istanziate! Le variabili devono sempre con il prossimo esempio mostriamo che con il predicato is l'ordine dei goal è importante: 1 ( a ) : X i s 2+3, Y i s X+1. 2 (b) : Y i s X+1, X i s 2+3.

4 4 CAPITOLO 13. PROLOG: ARITMETICA E RICORSIONE Come possiamo immaginare infatti, il goal a produce X = 5, Y = 6, mentre il goal b fallirebbe dal momento che X non è istanziata quando si va a svolgere il primo sotto goal. Il predicato is è un esempio di predicato non reversibile e come conseguenza tutte le funzioni che fanno uso di tale predicato non sono in generale reversibili. Un'espressione viene valutata soltanto se è il secondo argomento del predicato is. Lo vediamo con il seguente esempio: 1 p(a,2+3 5). 2 q (X,Y) : p(a,y), X i s Y. 3 : q (X,Y). 4 yes X=17 Y=2+3 5 Come si fa ad arrivare a tale risultato? Il goal q(x, Y ) unica con l'espressione alla seconda riga. Il primo goal di questa espressione unica con il fatto noto, dunque ad Y viene associato , ma tale espressione non viene valutata. Il secondo goal viene unicato assegnando a X il valore dell'espressione contenuta in Y. Questa volta l'espressione viene valutata in quanto è il secondo parametro dell'operatore is Operatori relazionali Prolog fornisce anche degli operatori (con notazione inssa) per confrontare i valori delle espressioni: Op. relazionali >, <, >=, =<, ==, =/= L'ultimo è l'operatore di disuguaglianza. Indicando uno qualunque degli operatori relazionali con REL possiamo dire che tali operatori vengono utilizzati nella forma: 1 Expr1 REL Expr2 Le espressioni Expr1 ed Expr2 vengono valutate (ovviamente devono essere completamente istanziate) ed i loro risultati vengono confrontati.

5 13.4. FUNZIONI Funzioni Volendo denire una funzione di n argomenti, questa può essere realizzata in Prolog tramite un predicato a n+1 argomenti, come segue: 1 f (X1, X2,..., Xn, Y) : <c a l c o l o di Y> Il predicato f accetta n+1 parametri che sono gli n argomenti della funzione e la variabile in cui inserire il risultato. Possiamo vedere ora qualche esempio: fattoriale: la funzione fattoriale è una funzione che prende in input un valore x e restistuisce 1 se x=0, altrimenti restituisce x 1 x. Questo secondo risultato può essere riscritto ricorsivamente come: f attoriale(x) = f attoriale(x 1) x. Sulla base di queste considerazioni possiamo dunque denire una funzione fatt (in realtà è un predicato) che calcola e restituisce proprio il fattoriale: 1 f a t t ( 0, 1 ). 2 f a t t (N,Y) : N>0, N1 i s N 1, f a t t (N1, Y1), Y i s N Y1. A questo punto possiamo provarla: 1 : f a t t (6,X). 2 yes X=720 massimo comun divisore fra due numeri interi positivi: il massimo comune divisore fra due numeri si calcola secondo queste due semplici regole: l'mcd fra X>0 e 0 è X; l'mcd fra X>0 ed Y>0 è pari all'mcd fra em Y e X mod Y. Ricaviamo quindi: 1 mcd(x, 0,X). 2 mcd(x,y, Z) : Y>0, X1 i s X mod Y, mcd(y, X1, Z). valore assoluto: vediamo due possibili formulazioni: 1 abs ( 0, 0 ). 2 abs (X,X) : X>0. 3 abs (X, Y) : X<0, Y i s (X 2 X). o alternativamente:

6 6 CAPITOLO 13. PROLOG: ARITMETICA E RICORSIONE 1 abs (X, X) : X>=0. 2 abs (X, Y) : X<0, Y i s X. parità: scriviamo una funzione che verichi se un numero è pari: 1 p a r i (X) : 0 i s (X mod 2). O in una via più elaborata: 1 p a r i ( 0 ). 2 p a r i (X) : X>0, X1 i s X 1, d i s p a r i (X1). 3 d i s p a r i (X) : X>0, X1 i s X 1, p a r i (X1) Ricorsione ed iterazione Il Prolog non fornisce alcun costrutto per l'iterazione, nessun ciclo for, while, repeat ecc. L'unico meccanismo per ottenere iterazione è la ricorsione. Un particolare tipo di ricorsione è la cosiddetta ricorsione tail. Una funzione ricorsiva tail è una funzione che dopo aver richiamato sè stessa, non eettua altre operazioni. In altre parole f è ricorsiva tail se sul risultato della chiamata ricorsiva di f non vengono eettuate altre operazioni. La ricorsione tail viene equiparata ad una denizione per iterazione. Nel caso di ricorsione la regola generale dice che la valutazione richiede l'uso dello stack ed in particolare il caricamento in cima allo stack di una copia del record d'attivazione della funzione per ogni chiamata della f stessa. Se la funzione è denita con ricorsione tail l'uso dello stack è inutile. Cerchiamo di capire ciò con un esempio. Consideriamo il seguente blocco di pseudo codice: (X): if X = 0 then g(x) else f(x 1) Supponiamo di richiamare f(2). Nello stack viene inserito un record di attivazione per contenente < X = 2,... >. Poi viene richiamata dal codice la funzione stessa, ma con argomento 1: f(1). Nello stack avremo quindi un nuovo record di attivazione: < X = 1,... >, < X = 2,... >. A questo punto viene richiamata f(0) e lo stack assume la forma: < X = 0,... >, < X = 1,... >, < X = 2,... >. A questo punto si può calcolare g(0) (e la sua chiamata provocherà l'aggiunta nello stack di un'altra voce < X = 0,... > in testa). All'uscita di g(0) viene rimosso il primo record di attivazione, e poi man mano tutti gli altri: prima il record corrispondente a f(0), poi a f(1), poi a f(2). Il salvataggio dei valori nello stack è necessario

7 13.5. RICORSIONE ED ITERAZIONE 7 per poter poi eettuare delle operazioni all'uscita delle varie funzioni, ma avendo usato la ricorsione tail non vi saranno altre elaborazioni all'uscita da una chiamata di funzione. Questo ci fa capire dunque che il salvataggio nello stack per tali funzioni è inutile e quindi si può attuare un'ottimizzazione. L'ottimizzazione della ricorsione tail consiste nel valutare una funzione ricorsiva tail f mediante un processo iterativo, cioè caricando un solo record di attivazione per f sullo stack di esecuzione. Con questa ottimizzazione non servirà in memoria uno spazio proporzionale al numero di chiamate ricorsive, ma uno spazio costante. In Prolog l'ottimizzazione della ricorsione tail risulta più complicata a causa del non determinismo e della presenza di punti di scelta nella denizione delle clausole. A questo proposito vediamo un piccolo esempio: 1 p(x) : c1 (X), g (X). 2 p(x) : c2 (X), h1 (X,Y), p(y). 3 p(x) : c3 (X), h2 (X,Y), p(y). Se viene scelta la seconda clausola per valutare il goal p(z), bisogna ricordarsi che la terza è ancora un punto di scelta aperto e bisogna mantenere alcune informazioni nel record di attivazione di p(z). Se invece viene scelta la terza (in generale l'ultima) clausola, non è più necessario mantenere alcuna informazione nel record di attivazione dal momento che non vi sono punti di scelta aperti e l'ottimizzazione può essere eettuata. Quindi in Prolog l'ottimizzazione della ricorsione tail è possibile solo se la scelta nella valutazione di un predicato p è deterministica o, meglio, se al momento della chiamata ricorsiva (n + 1)-esima di p non vi sono alternative aperte per la chiamata al passo n-esimo (ossia alternative che potrebbero essere considerate in fase di backtracking). Quasi tutti gli interpreti Prolog eettuano l'ottimizzazione della ricorsione tail ed è pertanto conveniente usare il più possibile ricorsione di tipo tail. Riprendiamo la denizione della funzione fattoriale: 1 f a t t ( 0, 1 ). 2 f a t t (N,Y) : N>0, N1 i s N 1, f a t t (N1, Y1), Y i s N Y1. Come possiamo notare, tale funzione non è ricorsiva tail in quanto dopo la chiamata ricorsiva di fatt nella seconda clausola si eettua un'ulteriore elaborazione, proprio sul risultato di tale funzione. Vediamo come sia possibile riscrivere questa funzione come ricorsiva tail: 1 f a t t 1 (N,Y) : f a t t 1 (N, 1, 1,Y). 2 f a t t 1 (N,M,A,A) : M>N. 3 f a t t 1 (N,M, Ai, Ao) : At i s Ai M, M1 i s M+1, f a t t 1 (N,M1, At, Ao).

8 8 CAPITOLO 13. PROLOG: ARITMETICA E RICORSIONE dove si è fatto uso di Ai e Ao che sono rispettivamente un accumulatore in ingresso (inizializzato a 1) ed un accumulatore in uscita. Sono cioè due contatori, uno passato in ingresso ed uno fornito in uscita che, all'ultima iterazione, corrisponderà al valore del fattoriale. Vediamo un'ultimo esempio: come realizzare un programma che calcoli la successione di Fibonacci. Lo facciamo conu na funzione non ricorsiva tail: 1 f i b o ( 0, 0 ). 2 f i b o ( 1, 1 ). 3 f i b o (X, Z) : Y1 i s X 1, Y2 i s X 2, f i b o (Y1,A), f i b o (Y2,B), Z i s A+B.

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

+ / operatori di confronto (espressioni logiche/predicati) / + 5 3 9 = > < Pseudo codice. Pseudo codice

+ / operatori di confronto (espressioni logiche/predicati) / + 5 3 9 = > < Pseudo codice. Pseudo codice Pseudo codice Pseudo codice Paolo Bison Fondamenti di Informatica A.A. 2006/07 Università di Padova linguaggio testuale mix di linguaggio naturale ed elementi linguistici con sintassi ben definita e semantica

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

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

Le funzioni di shell La bash supporta la programmazione procedurale e prevede la possibilità di definire funzioni utilizzando le sintassi

Le funzioni di shell La bash supporta la programmazione procedurale e prevede la possibilità di definire funzioni utilizzando le sintassi Le funzioni di shell La bash supporta la programmazione procedurale e prevede la possibilità di definire funzioni utilizzando le sintassi alternative: function nome { lista-comandi } oppure nome ( ) {

Dettagli

Appunti sulle disequazioni

Appunti sulle disequazioni Premessa Istituto d Istruzione Superiore A. Tilgher Ercolano (Na) Appunti sulle disequazioni Questa breve trattazione non vuole costituire una guida completa ed esauriente sull argomento, ma vuole fornire

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

Programmazione Funzionale

Programmazione Funzionale Programmazione Funzionale LP imperativi: apparenza simile modello di progettazione = macchina fisica Famiglia dei LP imperativi = progressivo miglioramento del FORTRAN Obiezione: pesante aderenza dei LP

Dettagli

Appunti e generalità sulle funzioni reali di variabili reali.

Appunti e generalità sulle funzioni reali di variabili reali. Appunti e generalità sulle funzioni reali di variabili reali. Premessa Questa breve trattazione non vuole costituire una guida completa ed esauriente sull argomento, ma vuole fornire solamente i concetti

Dettagli

Verica di Matematica su dominio e segno di una funzione [COMPITO 1]

Verica di Matematica su dominio e segno di una funzione [COMPITO 1] Verica di Matematica su dominio e segno di una funzione [COMPITO 1] Esercizio 1. Determinare il dominio delle seguenti funzioni: 1. y = 16 x ;. y = e 1 x +4 + x + x + 1; 3. y = 10 x x 3 4x +3x; 4. y =

Dettagli

Matlab: Funzioni. Informatica B. Daniele Loiacono

Matlab: Funzioni. Informatica B. Daniele Loiacono Matlab: Funzioni Informatica B Funzioni A cosa servono le funzioni? 3 x = input('inserisci x: '); fx=1 for i=1:x fx = fx*x if (fx>220) y = input('inserisci y: '); fy=1 for i=1:y fy = fy*y A cosa servono

Dettagli

Ricerca non informata in uno spazio di stati

Ricerca non informata in uno spazio di stati Università di Bergamo Facoltà di Ingegneria Intelligenza Artificiale Paolo Salvaneschi A5_2 V2.4 Ricerca non informata in uno spazio di stati Il contenuto del documento è liberamente utilizzabile dagli

Dettagli

Gli algoritmi. Gli algoritmi. Analisi e programmazione

Gli algoritmi. Gli algoritmi. Analisi e programmazione Gli algoritmi Analisi e programmazione Gli algoritmi Proprietà ed esempi Costanti e variabili, assegnazione, istruzioni, proposizioni e predicati Vettori e matrici I diagrammi a blocchi Analisi strutturata

Dettagli

Semantica operazionale dei linguaggi di Programmazione

Semantica operazionale dei linguaggi di Programmazione Semantica operazionale dei linguaggi di Programmazione Oggetti sintattici e oggetti semantici Rosario Culmone, Luca Tesei Lucidi tratti dalla dispensa Elementi di Semantica Operazionale R. Barbuti, P.

Dettagli

Esercizi Capitolo 5 - Alberi

Esercizi Capitolo 5 - Alberi Esercizi Capitolo 5 - Alberi Alberto Montresor 19 Agosto, 2014 Alcuni degli esercizi che seguono sono associati alle rispettive soluzioni. Se il vostro lettore PDF lo consente, è possibile saltare alle

Dettagli

Linguaggio del calcolatore. Algebra di Boole AND, OR, NOT. Notazione. And e or. Circuiti e reti combinatorie. Appendice A + dispense

Linguaggio del calcolatore. Algebra di Boole AND, OR, NOT. Notazione. And e or. Circuiti e reti combinatorie. Appendice A + dispense Linguaggio del calcolatore Circuiti e reti combinatorie ppendice + dispense Solo assenza o presenza di tensione: o Tante componenti interconnesse che si basano su e nche per esprimere concetti complessi

Dettagli

Indice generale. Modulo 1 Algebra 2

Indice generale. Modulo 1 Algebra 2 Indice generale Modulo 1 Algebra 2 Capitolo 1 Scomposizione in fattori. Equazioni di grado superiore al primo 1.1 La scomposizione in fattori 2 1.2 Raccoglimento a fattor comune 3 1.3 Raccoglimenti successivi

Dettagli

ALGEBRA I: CARDINALITÀ DI INSIEMI

ALGEBRA I: CARDINALITÀ DI INSIEMI ALGEBRA I: CARDINALITÀ DI INSIEMI 1. CONFRONTO DI CARDINALITÀ E chiaro a tutti che esistono insiemi finiti cioè con un numero finito di elementi) ed insiemi infiniti. E anche chiaro che ogni insieme infinito

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

STRUTTURE (O COSTRUTTI) DI CONTROLLO

STRUTTURE (O COSTRUTTI) DI CONTROLLO Le strutture di controllo Le strutture di controllo STRUTTURE (O COSTRUTTI) DI CONTROLLO determinano l ordine con cui devono essere eseguite le istruzioni sono indipendenti dalla natura delle istruzioni

Dettagli

razionali Figura 1. Rappresentazione degli insiemi numerici Numeri reali algebrici trascendenti frazionari decimali finiti

razionali Figura 1. Rappresentazione degli insiemi numerici Numeri reali algebrici trascendenti frazionari decimali finiti 4. Insiemi numerici 4.1 Insiemi numerici Insieme dei numeri naturali = {0,1,,3,,} Insieme dei numeri interi relativi = {..., 3,, 1,0, + 1, +, + 3, } Insieme dei numeri razionali n 1 1 1 1 = : n, m \{0}

Dettagli

ALGORITMI 1 a Parte. di Ippolito Perlasca. Algoritmo:

ALGORITMI 1 a Parte. di Ippolito Perlasca. Algoritmo: ALGORITMI 1 a Parte di Ippolito Perlasca Algoritmo: Insieme di regole che forniscono una sequenza di operazioni atte a risolvere un particolare problema (De Mauro) Procedimento che consente di ottenere

Dettagli

Appunti di Logica Matematica

Appunti di Logica Matematica Appunti di Logica Matematica Francesco Bottacin 1 Logica Proposizionale Una proposizione è un affermazione che esprime un valore di verità, cioè una affermazione che è VERA oppure FALSA. Ad esempio: 5

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

Algebra di Boole: Concetti di base. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica

Algebra di Boole: Concetti di base. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica Fondamenti di Informatica Algebra di Boole: Concetti di base Fondamenti di Informatica - D. Talia - UNICAL 1 Algebra di Boole E un algebra basata su tre operazioni logiche OR AND NOT Ed operandi che possono

Dettagli

Classi ed Oggetti in JAVA

Classi ed Oggetti in JAVA Classi ed Oggetti in JAVA Dott. Ing. Leonardo Rigutini Dipartimento Ingegneria dell Informazione Università di Siena Via Roma 56 53100 SIENA Uff. 0577233606 rigutini@dii.unisi.it www.dii.unisi.it/~rigutini/

Dettagli

LA FUNZIONE ESPONENZIALE E IL LOGARITMO

LA FUNZIONE ESPONENZIALE E IL LOGARITMO LA FUNZIONE ESPONENZIALE E IL LOGARITMO APPUNTI PER IL CORSO DI ANALISI MATEMATICA I G. MAUCERI Indice 1. Introduzione 1 2. La funzione esponenziale 2 3. Il numero e di Nepero 9 4. L irrazionalità di e

Dettagli

Parte 2. Determinante e matrice inversa

Parte 2. Determinante e matrice inversa Parte. Determinante e matrice inversa A. Savo Appunti del Corso di Geometria 013-14 Indice delle sezioni 1 Determinante di una matrice, 1 Teorema di Cramer (caso particolare), 3 3 Determinante di una matrice

Dettagli

Se log a. b = c allora: A) a b = c B) c a = b C) c b = a D) b c = a E) a c = b. L espressione y = log b x significa che:

Se log a. b = c allora: A) a b = c B) c a = b C) c b = a D) b c = a E) a c = b. L espressione y = log b x significa che: MATEMATICA 2005 Se log a b = c allora: A) a b = c B) c a = b C) c b = a D) b c = a E) a c = b L espressione y = log b x significa che: A) y é l esponente di una potenza di base b e di valore x B) x è l

Dettagli

Alla pagina successiva trovate la tabella

Alla pagina successiva trovate la tabella Tabella di riepilogo per le scomposizioni Come si usa la tabella di riepilogo per le scomposizioni Premetto che, secondo me, questa tabella e' una delle pochissime cose che in matematica bisognerebbe "studiare

Dettagli

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

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE. La Ricorsione. Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 29 Maggio 2014 La Ricorsione Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 29 Maggio 2014 Obiettivi La ricorsione Ricordate la sigla GNU GNU = GNU is Not Unix GNU = GNU is Not Unix GNU = GNU is

Dettagli

I numeri reali. Note per il corso di Analisi Matematica 1. G. Mauceri. a.a. 2003-04

I numeri reali. Note per il corso di Analisi Matematica 1. G. Mauceri. a.a. 2003-04 I numeri reali Note per il corso di Analisi Matematica 1 G. Mauceri a.a. 2003-04 2 I numeri reali Contents 1 Introduzione 3 2 Gli assiomi di campo 3 3 Gli assiomi dell ordine 4 4 Valore assoluto 5 5 I

Dettagli

Laboratorio di Calcolatori 1 Corso di Laurea in Fisica A.A. 2006/2007

Laboratorio di Calcolatori 1 Corso di Laurea in Fisica A.A. 2006/2007 Laboratorio di Calcolatori 1 Corso di Laurea in Fisica A.A. 2006/2007 Dott.Davide Di Ruscio Dipartimento di Informatica Università degli Studi di L Aquila Lezione del 08/03/07 Nota Questi lucidi sono tratti

Dettagli

CALCOLO DEL MASSIMO COMUN DIVISORE

CALCOLO DEL MASSIMO COMUN DIVISORE CALCOLO DEL MASSIMO COMUN DIVISORE Problema: "calcolare il Massimo Comun Divisore (M.C.D.) di due numeri naturali, A e B, secondo l'algoritmo cosiddetto delle sottrazioni successive". L'algoritmo "delle

Dettagli

Algoritmo euclideo, massimo comun divisore ed equazioni diofantee

Algoritmo euclideo, massimo comun divisore ed equazioni diofantee Algoritmo euclideo, massimo comun divisore ed equazioni diofantee Se a e b sono numeri interi, si dice che a divide b, in simboli: a b, se e solo se esiste c Z tale che b = ac. Si può subito notare che:

Dettagli

ALGEBRA I: NUMERI INTERI, DIVISIBILITÀ E IL TEOREMA FONDAMENTALE DELL ARITMETICA

ALGEBRA I: NUMERI INTERI, DIVISIBILITÀ E IL TEOREMA FONDAMENTALE DELL ARITMETICA ALGEBRA I: NUMERI INTERI, DIVISIBILITÀ E IL TEOREMA FONDAMENTALE DELL ARITMETICA 1. RICHIAMI SULLE PROPRIETÀ DEI NUMERI NATURALI Ho mostrato in un altra dispensa come ricavare a partire dagli assiomi di

Dettagli

Funzioni in più variabili

Funzioni in più variabili Funzioni in più variabili Corso di Analisi 1 di Andrea Centomo 27 gennaio 2011 Indichiamo con R n, n 1, l insieme delle n-uple ordinate di numeri reali R n4{(x 1, x 2,,x n ), x i R, i =1,,n}. Dato X R

Dettagli

Analisi Mat. 1 - Ing. Inform. - Soluzioni del compito del 23-3-06

Analisi Mat. 1 - Ing. Inform. - Soluzioni del compito del 23-3-06 Analisi Mat. - Ing. Inform. - Soluzioni del compito del 3-3-6 Sia p il polinomio di quarto grado definito da pz = z 4. Sia S il settore circolare formato dai numeri complessi che hanno modulo minore o

Dettagli

Quando troncare uno sviluppo in serie di Taylor

Quando troncare uno sviluppo in serie di Taylor Quando troncare uno sviluppo in serie di Taylor Marco Robutti October 13, 2014 Lo sviluppo in serie di Taylor di una funzione è uno strumento matematico davvero molto utile, e viene spesso utilizzato in

Dettagli

Nota: Eventi meno probabili danno maggiore informazione

Nota: Eventi meno probabili danno maggiore informazione Entropia Informazione associata a valore x avente probabilitá p(x é i(x = log 2 p(x Nota: Eventi meno probabili danno maggiore informazione Entropia di v.c. X P : informazione media elementi di X H(X =

Dettagli

Anello commutativo. Un anello è commutativo se il prodotto è commutativo.

Anello commutativo. Un anello è commutativo se il prodotto è commutativo. Anello. Un anello (A, +, ) è un insieme A con due operazioni + e, dette somma e prodotto, tali che (A, +) è un gruppo abeliano, (A, ) è un monoide, e valgono le proprietà di distributività (a destra e

Dettagli

Introduzione allo Scilab Parte 3: funzioni; vettori.

Introduzione allo Scilab Parte 3: funzioni; vettori. Introduzione allo Scilab Parte 3: funzioni; vettori. Felice Iavernaro Dipartimento di Matematica Università di Bari http://dm.uniba.it/ iavernaro felix@dm.uniba.it 13 Giugno 2007 Felice Iavernaro (Univ.

Dettagli

Esistenza di funzioni continue non differenziabili in alcun punto

Esistenza di funzioni continue non differenziabili in alcun punto UNIVERSITÀ DEGLI STUDI DI CAGLIARI FACOLTÀ DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN MATEMATICA Esistenza di funzioni continue non differenziabili in alcun punto Relatore Prof. Andrea

Dettagli

Ricorsione. Rosario Culmone. - p. 1/13

Ricorsione. Rosario Culmone. - p. 1/13 Ricorsione Rosario Culmone - p. 1/13 Induzione e Ricorsione Spesso utilizzeremo le definizioni induttive. Sono forme di definizione compatte che descrivono un numero infinito di elementi. I contesti di

Dettagli

Da una a più variabili: derivate

Da una a più variabili: derivate Da una a più variabili: derivate ( ) 5 gennaio 2011 Scopo di questo articolo è di evidenziare le analogie e le differenze, relativamente al calcolo differenziale, fra le funzioni di una variabile reale

Dettagli

PROPRIETA' ASSOCIATIVA La somma di tre o più addendi non cambia se al posto di alcuni di essi si sostituisce la loro somma.

PROPRIETA' ASSOCIATIVA La somma di tre o più addendi non cambia se al posto di alcuni di essi si sostituisce la loro somma. Addizione: PROPRIETA' COMMUTATIVA Cambiando l'ordine degli addendi la somma non cambia. 1) a + b = b + a PROPRIETA' ASSOCIATIVA La somma di tre o più addendi non cambia se al posto di alcuni di essi si

Dettagli

DAL PROBLEMA AL CODICE: ATTRAVERSO LO PSEUDOCODICE

DAL PROBLEMA AL CODICE: ATTRAVERSO LO PSEUDOCODICE DAL PROBLEMA AL CODICE: ATTRAVERSO LO PSEUDOCODICE Il problema Un computer è usato per risolvere dei problemi Prenotazione di un viaggio Compilazione e stampa di un certificato in un ufficio comunale Preparazione

Dettagli

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione in virgola mobile

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione in virgola mobile Problemi connessi all utilizzo di un numero di bit limitato Abbiamo visto quali sono i vantaggi dell utilizzo della rappresentazione in complemento alla base: corrispondenza biunivoca fra rappresentazione

Dettagli

CAPITOLO PRIMO IL CONCETTO DI ALGORITMO 1

CAPITOLO PRIMO IL CONCETTO DI ALGORITMO 1 1.1 Che cos è un algoritmo CAPITOLO PRIMO IL CONCETTO DI ALGORITMO 1 Gli algoritmi sono metodi per la soluzione di problemi. Possiamo caratterizzare un problema mediante i dati di cui si dispone all inizio

Dettagli

Esercizio di Sincronizzazione tra Processi: Ponte a Senso Unico Alternato con Capacità Limitata

Esercizio di Sincronizzazione tra Processi: Ponte a Senso Unico Alternato con Capacità Limitata Esercizio di Sincronizzazione tra Processi: Ponte a Senso Unico Alternato con Capacità Limitata Supponiamo sempre di avere un ponte stretto che permette il passaggio delle auto solo in un verso per volta,

Dettagli

La funzione è continua nel suo dominio perchè y = f(x) è composizione di funzioni continue. Il punto x = 0 è un punto isolato per D f.

La funzione è continua nel suo dominio perchè y = f(x) è composizione di funzioni continue. Il punto x = 0 è un punto isolato per D f. FUNZIONI CONTINUE - ALCUNI ESERCIZI SVOLTI SIMONE ALGHISI 1. Continuità di una funzione Dati un insieme D R, una funzione f : D R e x 0 R, si è detto che f è continua in x 0 se sono soddisfatte le seguenti

Dettagli

1. Intorni di un punto. Punti di accumulazione.

1. Intorni di un punto. Punti di accumulazione. 1. Intorni di un punto. Punti di accumulazione. 1.1. Intorni circolari. Assumiamo come distanza di due numeri reali x e y il numero non negativo x y (che, come sappiamo, esprime la distanza tra i punti

Dettagli

Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati

Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati Algoritmi Algoritmi Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati Il procedimento (chiamato algoritmo) è composto da passi elementari

Dettagli

Algebra Relazionale. algebra relazionale

Algebra Relazionale. algebra relazionale Algebra Relazionale algebra relazionale Linguaggi di Interrogazione linguaggi formali Algebra relazionale Calcolo relazionale Programmazione logica linguaggi programmativi SQL: Structured Query Language

Dettagli

Linguaggio di bash per esempi. Tre modi per quotare. Esempio. quotare: significa trattare caratteri speciali come normali caratteri

Linguaggio di bash per esempi. Tre modi per quotare. Esempio. quotare: significa trattare caratteri speciali come normali caratteri Linguaggio di bash per esempi Tre modi per quotare quotare: signica trattare caratteri speciali come normali caratteri es. di aratteri speciali: $, blank, apici, 1. backslash: per quotare un solo carattere

Dettagli

A i è un aperto in E. i=1

A i è un aperto in E. i=1 Proposizione 1. A è aperto se e solo se A c è chiuso. Dimostrazione. = : se x o A c, allora x o A = A o e quindi esiste r > 0 tale che B(x o, r) A; allora x o non può essere di accumulazione per A c. Dunque

Dettagli

1 Valore atteso o media

1 Valore atteso o media 1 Valore atteso o media Definizione 1.1. Sia X una v.a., si chiama valore atteso (o media o speranza matematica) il numero, che indicheremo con E[X] o con µ X, definito come E[X] = i x i f(x i ) se X è

Dettagli

Istruzioni per il controllo di ciclo - ciclo a condizione generica

Istruzioni per il controllo di ciclo - ciclo a condizione generica Istruzioni per il controllo di ciclo - ciclo a condizione generica Permette di ripetere l esecuzione di un blocco di istruzioni finchè non viene verificata una condizione logica. Sintassi istruzione_1...

Dettagli

Come si può esprimere il risultato dl un conteggio e di una misura? Quando si dice che In una

Come si può esprimere il risultato dl un conteggio e di una misura? Quando si dice che In una NUMERI INTERI E NUMERI DECIMALI Come si può esprimere il risultato dl un conteggio e di una misura? Quando si dice che In una cassetta sono contenuti 45 penne e che una lamiera misura 1,35 m. dl lunghezza,

Dettagli

Elementi di semantica denotazionale ed operazionale

Elementi di semantica denotazionale ed operazionale Elementi di semantica denotazionale ed operazionale 1 Contenuti! sintassi astratta e domini sintattici " un frammento di linguaggio imperativo! semantica denotazionale " domini semantici: valori e stato

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

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

Funzioni. Corso di Fondamenti di Informatica

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

Dettagli

(anno accademico 2008-09)

(anno accademico 2008-09) Calcolo relazionale Prof Alberto Belussi Prof. Alberto Belussi (anno accademico 2008-09) Calcolo relazionale E un linguaggio di interrogazione o e dichiarativo: at specifica le proprietà del risultato

Dettagli

Gli array. Gli array. Gli array. Classi di memorizzazione per array. Inizializzazione esplicita degli array. Array e puntatori

Gli array. Gli array. Gli array. Classi di memorizzazione per array. Inizializzazione esplicita degli array. Array e puntatori Gli array Array e puntatori Laboratorio di Informatica I un array è un insieme di elementi (valori) avente le seguenti caratteristiche: - un array è ordinato: agli elementi dell array è assegnato un ordine

Dettagli

EQUAZIONI non LINEARI

EQUAZIONI non LINEARI EQUAZIONI non LINEARI Francesca Pelosi Dipartimento di Matematica, Università di Roma Tor Vergata CALCOLO NUMERICO e PROGRAMMAZIONE http://www.mat.uniroma2.it/ pelosi/ EQUAZIONI non LINEARI p.1/44 EQUAZIONI

Dettagli

Architetture CISC e RISC

Architetture CISC e RISC FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine Architetture CISC e RISC 2000 Pier Luca Montessoro (si veda la nota di copyright alla slide n.

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

Introduzione alla Teoria degli Errori

Introduzione alla Teoria degli Errori Introduzione alla Teoria degli Errori 1 Gli errori di misura sono inevitabili Una misura non ha significato se non viene accompagnata da una ragionevole stima dell errore ( Una scienza si dice esatta non

Dettagli

Funzioni tra insiemi niti Numeri di Stirling e Bell. Davide Penazzi

Funzioni tra insiemi niti Numeri di Stirling e Bell. Davide Penazzi Funzioni tra insiemi niti Numeri di Stirling e Bell Davide Penazzi 2 Funzioni tra insiemi niti: i numeri di Stirling e Bell 1 Contare il numero delle funzioni tra insiemi 1.1 Denizioni e concetti preliminari

Dettagli

TECNICHE DI SIMULAZIONE

TECNICHE DI SIMULAZIONE TECNICHE DI SIMULAZIONE MODELLI STATISTICI NELLA SIMULAZIONE Francesca Mazzia Dipartimento di Matematica Università di Bari a.a. 2004/2005 TECNICHE DI SIMULAZIONE p. 1 Modelli statistici nella simulazione

Dettagli

Dispense del Corso di Algoritmi e Strutture Dati

Dispense del Corso di Algoritmi e Strutture Dati Dispense del Corso di Algoritmi e Strutture Dati Marco Bernardo Edoardo Bontà Università degli Studi di Urbino Carlo Bo Facoltà di Scienze e Tecnologie Corso di Laurea in Informatica Applicata Versione

Dettagli

LEZIONE 14. a 1,1 v 1 + a 1,2 v 2 + a 1,3 v 3 + + a 1,n 1 v n 1 + a 1,n v n = w 1

LEZIONE 14. a 1,1 v 1 + a 1,2 v 2 + a 1,3 v 3 + + a 1,n 1 v n 1 + a 1,n v n = w 1 LEZIONE 14 141 Dimensione di uno spazio vettoriale Abbiamo visto come l esistenza di una base in uno spazio vettoriale V su k = R, C, permetta di sostituire a V, che può essere complicato da trattare,

Dettagli

Le funzioni. Funzioni. Funzioni. Funzioni. Funzioni. Funzioni

Le funzioni. Funzioni. Funzioni. Funzioni. Funzioni. Funzioni Funzioni Le funzioni Con il termine funzione si intende, in generale, un operatore che, applicato a un insieme di operandi, consente di calcolare un risultato, come avviene anche per una funzione matematica

Dettagli

Capitolo 9: PROPAGAZIONE DEGLI ERRORI

Capitolo 9: PROPAGAZIONE DEGLI ERRORI Capitolo 9: PROPAGAZIOE DEGLI ERRORI 9.1 Propagazione degli errori massimi ella maggior parte dei casi le grandezze fisiche vengono misurate per via indiretta. Il valore della grandezza viene cioè dedotto

Dettagli

Elementi di informatica

Elementi di informatica Elementi di informatica Sistemi di numerazione posizionali Rappresentazione dei numeri Rappresentazione dei numeri nei calcolatori rappresentazioni finalizzate ad algoritmi efficienti per le operazioni

Dettagli

Arduino: Programmazione

Arduino: Programmazione Programmazione formalmente ispirata al linguaggio C da cui deriva. I programmi in ARDUINO sono chiamati Sketch. Un programma è una serie di istruzioni che vengono lette dall alto verso il basso e convertite

Dettagli

MIPS Instruction Set 2

MIPS Instruction Set 2 Laboratorio di Architettura 15 aprile 2011 1 Architettura Mips 2 Chiamata a Funzione 3 Esercitazione Registri MIPS reference card: http://refcards.com/docs/waetzigj/mips/mipsref.pdf 32 registri general

Dettagli

Funzioni di più variabili. Ottimizzazione libera e vincolata

Funzioni di più variabili. Ottimizzazione libera e vincolata libera e vincolata Generalità. Limiti e continuità per funzioni di 2 o Piano tangente. Derivate successive Formula di Taylor libera vincolata Lo ordinario è in corrispondenza biunivoca con i vettori di

Dettagli

METODI ITERATIVI PER SISTEMI LINEARI

METODI ITERATIVI PER SISTEMI LINEARI METODI ITERATIVI PER SISTEMI LINEARI LUCIA GASTALDI 1. Metodi iterativi classici Sia A R n n una matrice non singolare e sia b R n. Consideriamo il sistema (1) Ax = b. Un metodo iterativo per la soluzione

Dettagli

Ricerca Operativa Branch-and-Bound per problemi di Programmazione Lineare Intera

Ricerca Operativa Branch-and-Bound per problemi di Programmazione Lineare Intera Ricerca Operativa Branch-and-Bound per problemi di Programmazione Lineare Intera L. De Giovanni AVVERTENZA: le note presentate di seguito non hanno alcuna pretesa di completezza, né hanno lo scopo di sostituirsi

Dettagli

Permutazione degli elementi di una lista

Permutazione degli elementi di una lista Permutazione degli elementi di una lista Luca Padovani padovani@sti.uniurb.it Sommario Prendiamo spunto da un esercizio non banale per fare alcune riflessioni su un approccio strutturato alla risoluzione

Dettagli

Esercitazioni per il corso di Logica Matematica

Esercitazioni per il corso di Logica Matematica Esercitazioni per il corso di Logica Matematica Luca Motto Ros 14 marzo 2005 Nota importante. Queste pagine contengono appunti personali dell esercitatore e sono messe a disposizione nel caso possano risultare

Dettagli

I numeri. Premessa: Che cosa sono e a che servono i numeri?

I numeri. Premessa: Che cosa sono e a che servono i numeri? I numeri Premessa: Che cosa sono e a che servono i numeri? Come ti sarai reso conto, i numeri occupano un ruolo importante nella tua vita: dai numeri che esprimono il prezzo degli oggetti venduti in un

Dettagli

Esercitazioni su rappresentazione dei numeri e aritmetica dei calcolatori"

Esercitazioni su rappresentazione dei numeri e aritmetica dei calcolatori Esercitazioni su rappresentazione dei numeri e aritmetica dei calcolatori" slide a cura di Salvatore Orlando & Marta Simeoni " Architettura degli Elaboratori 1 Interi unsigned in base 2" Si utilizza un

Dettagli

ESEMPIO 1: eseguire il complemento a 10 di 765

ESEMPIO 1: eseguire il complemento a 10 di 765 COMPLEMENTO A 10 DI UN NUMERO DECIMALE Sia dato un numero N 10 in base 10 di n cifre. Il complemento a 10 di tale numero (N ) si ottiene sottraendo il numero stesso a 10 n. ESEMPIO 1: eseguire il complemento

Dettagli

ALCUNE APPLICAZIONI DEL CALCOLO DIFFERENZIALE

ALCUNE APPLICAZIONI DEL CALCOLO DIFFERENZIALE ALCUNE APPLICAZIONI DEL CALCOLO DIFFERENZIALE Sia I un intervallo di R e siano a = inf(i) R { } e b = sup(i) R {+ }; i punti di I diversi dagli estremi a e b, ( e quindi appartenenti all intervallo aperto

Dettagli

Appunti di Sistemi Operativi. Enzo Mumolo e-mail address :mumolo@units.it web address :www.units.it/mumolo

Appunti di Sistemi Operativi. Enzo Mumolo e-mail address :mumolo@units.it web address :www.units.it/mumolo Appunti di Sistemi Operativi Enzo Mumolo e-mail address :mumolo@units.it web address :www.units.it/mumolo Indice 1 Cenni su alcuni algoritmi del Kernel di Unix 1 1.1 Elementi di Unix Internals.................................

Dettagli

Esempi di algoritmi. Lezione III

Esempi di algoritmi. Lezione III Esempi di algoritmi Lezione III Scopo della lezione Implementare da zero algoritmi di media complessità. Verificare la correttezza di un algoritmo eseguendolo a mano. Imparare a valutare le prestazioni

Dettagli

Quando A e B coincidono una coppia ordinata é determinata anche dalla loro posizione.

Quando A e B coincidono una coppia ordinata é determinata anche dalla loro posizione. Grafi ed Alberi Pag. /26 Grafi ed Alberi In questo capitolo richiameremo i principali concetti di due ADT che ricorreranno puntualmente nel corso della nostra trattazione: i grafi e gli alberi. Naturale

Dettagli

Rappresentazione dei numeri in un calcolatore

Rappresentazione dei numeri in un calcolatore Corso di Calcolatori Elettronici I A.A. 2010-2011 Rappresentazione dei numeri in un calcolatore Lezione 2 Università degli Studi di Napoli Federico II Facoltà di Ingegneria Rappresentazione dei numeri

Dettagli

M P = PA^V. Il risultante e denito semplicemente come la somma dei vettori di a

M P = PA^V. Il risultante e denito semplicemente come la somma dei vettori di a VETTORI APPLICATI Sistema di vettori applicati L'ente matematico costituito da un punto P e da un vettore (libero) V, si dice vettore applicato in P e si denota con (P;V). E comodo rappresentare il vettore

Dettagli

Verifica che una grammatica sia Context Free nel GrammaReader

Verifica che una grammatica sia Context Free nel GrammaReader Verifica che una grammatica sia Context Free nel GrammaReader Sommario Dispensa di Linguaggi di Programmazione Corrado Mencar Pasquale Lops In questa dispensa si descrivono alcune soluzioni per verificare

Dettagli

Linguaggio C: introduzione

Linguaggio C: introduzione Linguaggio C: introduzione Il linguaggio C è un linguaggio general purpose sviluppato nel 1972 da Dennis Ritchie per scrivere il sistema operativo UNIX ed alcune applicazioni per un PDP-11. Il linguaggio

Dettagli

Strutture. Strutture e Unioni. Definizione di strutture (2) Definizione di strutture (1)

Strutture. Strutture e Unioni. Definizione di strutture (2) Definizione di strutture (1) Strutture Strutture e Unioni DD cap.10 pp.379-391, 405-406 KP cap. 9 pp.361-379 Strutture Collezioni di variabili correlate (aggregati) sotto un unico nome Possono contenere variabili con diversi nomi

Dettagli

Abstract Data Type (ADT)

Abstract Data Type (ADT) Abstract Data Type Pag. 1/10 Abstract Data Type (ADT) Iniziamo la nostra trattazione presentando una nozione che ci accompagnerà lungo l intero corso di Laboratorio Algoritmi e Strutture Dati: il Tipo

Dettagli

4. Operazioni elementari per righe e colonne

4. Operazioni elementari per righe e colonne 4. Operazioni elementari per righe e colonne Sia K un campo, e sia A una matrice m n a elementi in K. Una operazione elementare per righe sulla matrice A è una operazione di uno dei seguenti tre tipi:

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

Note integrative ed Esercizi consigliati

Note integrative ed Esercizi consigliati - a.a. 2006-07 Corso di Laurea Specialistica in Ingegneria Civile (CIS) Note integrative ed consigliati Laura Poggiolini e Gianna Stefani Indice 0 1 Convergenza uniforme 1 2 Convergenza totale 5 1 Numeri

Dettagli

Numeri complessi e polinomi

Numeri complessi e polinomi Numeri complessi e polinomi 1 Numeri complessi L insieme dei numeri reali si identifica con la retta della geometria: in altri termini la retta si può dotare delle operazioni + e e divenire un insieme

Dettagli