Università degli Studi di Bergamo Facoltà di Lingue e Letterature Straniere Facoltà di Lettere e Filosofia A.A Informatica generale 1 Appunti del corso Lezione 10 Marco Lazzari
Marco Lazzari – Informatica generale 1 Somma 1 ad un numero Somma due numeri Moltiplica due numeri Compilatori e interpreti l traduzione dal linguaggio ad alto livello al linguaggio macchina
Marco Lazzari – Informatica generale 1 Compilatori e interpreti l compilatore: una traduzione, più esecuzioni; dal file sorgente del programma genera un file eseguibile mioprog.c mioprog.exe l interprete: traduzione al volo (simultanea)
Marco Lazzari – Informatica generale 1 Linguaggi ad alto livello l vocabolario (parole chiave, operatori, identificatori,...) l sintassi l rappresentazione dei dati (tipi di dati elementari o complessi)
Marco Lazzari – Informatica generale 1 Linguaggi ad alto livello l calcolo scientifico: FORTRAN (Pascal) l applicazioni gestionali: COBOL l interfacce grafiche: Visual XYZ l intelligenza artificiale: LISP, Prolog l...
Marco Lazzari – Informatica generale 1 Linguaggi ad alto livello l BASIC (alto?) 10 Totale = 0 20 INPUT "Quante cifre vuoi sommare?";n 30 FOR k = 1 TO n 40 INPUT "Immetti cifra",n 50 Totale = Totale + n 60 NEXT k 70 PRINT 80 PRINT "Il totale è: "; Totale
Marco Lazzari – Informatica generale 1 Linguaggi ad alto livello l Pascal program totale; var k, n, totale: integer; begin k := 1; write('Quante cifre vuoi sommare?'); readln(n); for k := 1 to n do begin write('Immetti cifra: '); readln(c); totale := totale + c end writeln('Il totale è: ', totale); end.
Marco Lazzari – Informatica generale 1 Linguaggi l alfabeto: i simboli per costruire le frasi del linguaggio; lessico: sequenze di simboli che compongono le parole del linguaggio; parole chiave (if then else begin end …) l sintassi: definisce le frasi ben formate del linguaggio l semantica: definisce il significato dei costrutti grammaticali
Marco Lazzari – Informatica generale 1 Programmazione l problema, analisi, algoritmo, programma l algoritmo: insieme ordinato di passi, che descrive i dati che si usano e la sequenza di azioni elementari per risolvere un problema l diagrammi di flusso: un linguaggio grafico per la descrizione di algoritmi
Marco Lazzari – Informatica generale 1 Diagrammi di flusso: i blocchi START END AZIONEI/O CONDIZ. VF
Marco Lazzari – Informatica generale 1 START END dati A e B C := A + B risultato C somma di due numeri START END dati A e B C := A * B risultato C prodotto di due numeri START END dati A e B C := A DIV B risultato C divisione intera di due numeri
Marco Lazzari – Informatica generale 1 stampa 30 volte la parola TRE START END C := 1 C := C + 1 stampa TRE C = 30 VF
Marco Lazzari – Informatica generale 1 stampa NUMERO volte la parola PAROLA (NUMERO e PAROLA sono valori di ingresso per il programma) START END C := 1 C := C + 1 stampa PAROLA C = NUMERO dati PAROLA e NUMERO VF
Marco Lazzari – Informatica generale 1 esegue operazioni misteriose usando un registro dappoggio START END dati A B C REG := A + B stampa REG REG := C - REG REG > C VF
Marco Lazzari – Informatica generale 1 somma due numeri avendo a disposizione solo loperazione di incremento unitario (macchina a strati) START END dati A B RIS := A; CON := 1 stampa RISCON := CON + 1 CON = B VF RIS := RIS + 1 A e B > 0
Marco Lazzari – Informatica generale 1 moltiplica due numeri avendo a disposizione solo loperazione di somma (macchina a strati) START END dati A B RIS := 0; CON := 1 stampa RISCON := CON + 1 CON = B VF RIS := RIS + A A e B > 0
Marco Lazzari – Informatica generale 1 Dal diagramma al programma START END azione 1 azione 2 begin end
Marco Lazzari – Informatica generale 1 Dal diagramma al programma if then else azione 1azione 2 condizione VF
Marco Lazzari – Informatica generale 1 Dal diagramma al programma while do azione 1 condizione VF