180 likes | 291 Views
TURBOPASCAL. …. ripassiamo. Programmare in Turbo Pascal (TP). significa operare una “traduzione” in frasi del linguaggio TP ( codifica) delle frasi in linguaggio di progetto (LP) oppure dei simboli grafici del diagramma a blocchi (flow-chart) di un algoritmo.
E N D
TURBOPASCAL …. ripassiamo - prof. V. Riboldi -
Programmare in Turbo Pascal (TP) significa operare una “traduzione” in frasi del linguaggio TP (codifica) • delle frasi in linguaggio di progetto (LP) oppure • dei simboli grafici del diagramma a blocchi (flow-chart) di un algoritmo - prof. V. Riboldi -
In un programma TP si distinguono le seguenti parti: • intestazione • sezione delle dichiarazioni • corpo del programma - prof. V. Riboldi -
e' formata da una sola riga che inizia con la parola chiave program seguita dal nome del programma e dal;(punto e virgola) Intestazione - prof. V. Riboldi -
Sezione delle dichiarazioni devono essere dichiarati tutti gli oggetti del programma (costanti, variabili, funzioni, procedure ....) prima di essere usati const NomeCostante= Valore ; varNomeVariabile: tipovariabile ; - prof. V. Riboldi -
Corpo del programma inizia con la parola chiave begin (inizio) seguita dalla lista delle istruzioni che vengono eseguite in ordine sequenziale e termina con la parola chiave end (fine) seguita da un . (punto) la coppia di termini begin... end (costrutto di blocco) serve per “comunicare al calcolatore” che le istruzioni ivi comprese sono un unico blocco. - prof. V. Riboldi -
CODIFICA DELLE ISTRUZIONI - prof. V. Riboldi -
CODIFICA DELLE ISTRUZIONI - prof. V. Riboldi -
Le strutture di controllo Teorema di Jacopini-Bohm Un qualunque algoritmo può essere costruito usando solo tre strutture di controllo del processo di elaborazione Sequenza Selezione Iterazione - prof. V. Riboldi -
La sequenza • Indica l’ordine in cui devono essere eseguite le istruzioni • In TP le istruzioni di una sequenza sono racchiuse dalle parole riservate begin e end - prof. V. Riboldi -
La selezione binaria • scelta tra due possibilità alternative • if proposizione then istruzione1 else istruzione2 • se le istruzioni sono più di una vanno racchiuse tra begin e end - prof. V. Riboldi -
La selezione - Complementi • la selezione può esistere in forma semplificata (senza else) • l'istruzione che precede else non deve mai essere seguita dal ; invece la fine della struttura condizionale è caratterizzata dal ; • se più condizioni devono essere verificate contemporaneamente, esse vanno collegate dall’operatore logico and e racchiuse tra parentesi tonde • se deve verificarsi almeno una condizione tra un certo numero, esse vanno collegate dall’operatore logico or e racchiuse tra parentesi tonde - prof. V. Riboldi -
La selezione - Complementi Le istruzioni if possono presentarsi • in cascata • annidate • multiple - prof. V. Riboldi -
Condizioni in cascata – flow chart - prof. V. Riboldi -
Condizioni annidate – flow chart - prof. V. Riboldi -
LP se <condizione1> allora ..... se <condizione2> allora ..... ....................... altrimenti(*istr. facoltativa*) .................... fine (*istr. obbligatoria*) TP caseNOMEVARIABILEof VALORE1: begin blocco istruz. 1; end; VALORE2: begin blocco istruz. 2; end; ………. else(*istr. facoltativa*) .................... end; (*istr. obbligatoria*) Condizioni multiple - prof. V. Riboldi -
Selezione multipla - spiegazione • Quando la variabile di questa struttura, che, poiché discrimina la scelta, è detta selettore, assume il VALORE1 vengono eseguite le istruzioni corrispondenti a tale valore e così via. • Quando la variabile assume un valore non specificato vengono eseguite le istruzioni del blocco che segue la parola else; se questa parte viene omessa e la variabile assume un valore non specificato tra i valori dell’elenco, l’esecutore procede con l’istruzione successiva. - prof. V. Riboldi -
Selezione multipla - osservazioni • I valori elencati devono essere dichiarati dello stesso tipo della variabile selettore • L’istruzione case significa “nel caso che” • Se uno stesso blocco di istruzioni deve essere eseguito per più di un valore, allora basta farne un elenco separandoli con una virgola • Se uno stesso blocco di istruzioni deve essere eseguito per un intervallo di valori, per esempio per 0 NOMEVARIABILE 10, si utilizza la scrittura 1..10 in cui NOMEVARIABILE assume valori interi - prof. V. Riboldi -