La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

FI - Algoritmi e Programmazione 1 Espressioni condizionali Una espressione condizionale è introdotta dalloperatore ternario condiz ? espr1 : espr2 Lespressione.

Presentazioni simili


Presentazione sul tema: "FI - Algoritmi e Programmazione 1 Espressioni condizionali Una espressione condizionale è introdotta dalloperatore ternario condiz ? espr1 : espr2 Lespressione."— Transcript della presentazione:

1 FI - Algoritmi e Programmazione 1 Espressioni condizionali Una espressione condizionale è introdotta dalloperatore ternario condiz ? espr1 : espr2 Lespressione denota il valore denotato da espr1 (se condiz è vera) quello denotato da espr2 (se condiz è falsa) in base al valore della espressione condiz

2 FI - Algoritmi e Programmazione 2 Espressioni condizionali : esempi 3 ? 10 : 20 denota sempre 10 (3 è sempre vera) x ? 10 : 20 denota 10 se x è vera (diversa da zero) oppure 20 se x è falsa (x>y) ? x : y denota il maggiore fra x e y

3 FI - Algoritmi e Programmazione 3 Struttura di un programma C La struttura di un programma C è definita ::= { } { }

4 FI - Algoritmi e Programmazione 4 Struttura di un programma C La parte è obbligatoria ed è definita ::= int main() { [ ] }

5 FI - Algoritmi e Programmazione 5 Struttura di un programma C introducono i nomi di costanti, variabili, tipi definiti dallutente sequenza di frasi del linguaggio ognuna delle quali è unistruzione Il main() è una particolare unità di codifica (una funzione)

6 FI - Algoritmi e Programmazione 6 Caratteri e identificatori Set di caratteri caratteri ASCII (interi da 0 a 127 (255) ) Identificatori sequenze di caratteri tali che ::= { | }

7 FI - Algoritmi e Programmazione 7 Commenti Sequenze di caratteri racchiuse fra /* e */ Es. /* Questo è un commento */ Vengono ignorati nellesecuzione di un programma ma servono a chiarire il significato del codice sorgente. Non possono essere annidati /* Questo è /* Questo è un commento dentro un altro commento */ un ERRORE */

8 FI - Algoritmi e Programmazione 8 Variabile E unastrazione della cella di memoria Formalmente, è un simbolo associato ad un indirizzo fisico Simbolo indirizzo X 1328 X 1328

9 FI - Algoritmi e Programmazione 9 Variabile Lindirizzo fisico è fisso e immutabile, cambia il suo contenuto cioè il valore di x esempio: x=

10 FI - Algoritmi e Programmazione 10 Definizione di variabile E la frase che introduce una nuova variabile identificata da un simbolo atta a denotare valori di un ben preciso tipo

11 FI - Algoritmi e Programmazione 11 Esempi Definizione di una variabile int x; /* deve denotare un valore intero*/ float y; /* deve denotare un valore reale*/ char ch; /* deve denotare un valore carattere*/

12 FI - Algoritmi e Programmazione 12 Inizializzazione di variabili E possibile specificare il valore iniziale di una variabile quando la si dichiara = ; int x = 32; double speed = 124.6; double time = 71.6; double km = speed*time; /* inizializzazione mediante una espressione*/

13 FI - Algoritmi e Programmazione 13 Caratteristiche delle variabili Campo dazione (scope): è la parte di programma (unità di codifica) in cui la variabile è nota e può essere usata Tipo: specifica la classe di valori che la variabile può assumere (e quindi gli operatori applicabili) Tempo di vita: lintervallo di tempo in cui rimane valida lassociazione simbolo/cella di memoria Valore: è rappresentato (secondo la codifica adottata per il tipo cui la variabile appartiene) nellarea di memoria associata alla variabile.

14 FI - Algoritmi e Programmazione 14 Esempio Problema data una temperatura c espressa in gradi Celsius, calcolare il corrispondente valore f espresso in Fahrenheit Approccio: si parte dal problema e dalle proprietà nel dominio di dati Specifica della soluzione: relazione tra grandezze esistenti nello specifico dominio applicativo c*9/5=f-32

15 FI - Algoritmi e Programmazione 15 Esempio: algoritmo di risoluzione Dato c calcolare f sfruttando la relazione f=32+c*9/5 Solo a questo punto (una volta definito lalgoritmo) si effettua la codifica

16 FI - Algoritmi e Programmazione 16 Un possibile programma in C main() { float c; /*Celsius*/ scanf(%f, &c); /* legge il valore di c */ float f=32+c*9/5; printf ( Temperatura (F): %f \n, f); /* stampa il valore di f */ } NB limpaginazione (indentazione) serve solo per rendere più leggibile il programma: in C le istruzioni sono separate da ;

17 FI - Algoritmi e Programmazione 17 Costruzione di una applicazione Si deve compilare il file (o i file) che contiene (contengono) il testo del programma (file sorgente, estensione.c) Il risultato sono uno o più file oggetto (estensione.o (Unix) o.obj (Windows)) si devono poi collegare (linking) i file oggetto luno con laltro e con le librerie di sistema al fine di creare un unico file eseguibile (estensione.exe (Windows); nome a piacere o a.out se non si specifica il nome (Unix))

18 FI - Algoritmi e Programmazione 18 Perché? Lelaboratore capisce solo il linguaggio macchina della CPU utilizzata il nostro programma opera su una macchina astratta, rivestita del sistema operativo che controlla le periferiche (stampante, memoria di massa, ecc.) alcune istruzioni complesse potrebbero essere dei mini-programmi forniti insieme al compilatore che le ingloba quando occorre

19 FI - Algoritmi e Programmazione 19 Librerie di sistema Insieme di componenti software che consentono di interfacciarsi col sistema operativo, usare le risorse da questo gestite e realizzare alcune istruzioni complesse del linguaggio In pratica, insieme di funzioni preconfezionate, utilizzabili allinterno di un file sorgente

20 FI - Algoritmi e Programmazione 20 Eseguire un programma Una volta scritto, compilato (con il compilatore) e collegato (con il linker) lo si può lanciare sullelaboratore E se non funziona? Debugger: strumento in grado di eseguire passo passo il programma, mostrando le variabili e la loro evoluzione e tenendo traccia delle funzioni via via chiamate

21 FI - Algoritmi e Programmazione 21 Debugger Consente di eseguire il programma riga per riga entrando anche dentro le funzioni chiamate eseguire il codice fino ad una certa riga controllare istante per istante il valore assunto una variabile vedere istante per istante quali siano le funzioni attive

22 FI - Algoritmi e Programmazione 22 Ambienti integrati di programmazione Automatizzano la procedura di compilazione e linking dei file Possono lanciare il programma sulla macchina e visualizzarne loutput a video Incorporano le funzioni di debug Noi utilizzeremo il BorlandC della Borland presente nei laboratori di base


Scaricare ppt "FI - Algoritmi e Programmazione 1 Espressioni condizionali Una espressione condizionale è introdotta dalloperatore ternario condiz ? espr1 : espr2 Lespressione."

Presentazioni simili


Annunci Google