Informatica B allievi Ing.Energetica e Meccanica

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Informatica B allievi Ing.Energetica e Meccanica"

Transcript

1 Informatica B allievi Ing.Energetica e Meccanica INTRODUZIONE ALLA PROGRAMMAZIONE Prof. A. Morzenti

2 Codifica degli algoritmi in un linguaggio di alto livello problema della formulazione di un algoritmo algoritmo formulato per essere eseguito automaticamente preciso e dettagliato per essere comunicato tra esseri umani sintetico obiettivi contrastanti precisione e dettaglio linguaggio macchina, ma è difficilmente comprensibile sinteticità linguaggio naturale ma non è eseguibile e spesso è ambiguo linguaggi di programmazione ad alto livello cercano di risolvere questo dilemma soluzioni di compromesso, non ancora soddisfacenti noi adottiamo linguaggio C, di alto livello ma non modernissimo inizialmente due principali semplificazioni: gamma ristretta di operazioni di ingresso/uscita (input/output, I/O) evitata dichiarazione esplicita degli elementi usati nel programma Progressi rispetto a codice macchina: celle di memoria, istruzioni, valori costanti denotati in modo simbolico usando identificatore mnemonico più facile da capire e ricordare sequenza di esecuzione delle istruzioni espressa nello stile del linguaggio naturale e della matematica 2/ 24

3 descrizione di C mediante la macchina C che esegue i programmi codificati nel linguaggio Il nucleo del linguaggio C al posto delle periferiche un unica unità di ingresso, Standard Input un unica unità di uscita, Standard Output Standard Input, Standard Output e memoria divisi in celle elementari contenenti ciascuna un dato semplificazioni / idealizzazioni nessuna ipotesi sulla natura del dato nelle celle (poi saremo molto più precisi) nessun limite al numero delle celle al valore (numerico) contenuto queste celle di memoria generalizzate chiamate variabili perchè contenuto può cambiare durante esecuzione programma variabili hanno un nome: un identificatore simbolico successione di lettere, cifre e segno _ con al primo posto una lettera 3/ 24

4 Esempi di identificatori C: a, x, alfa, pippo, a1, xy23, Giuseppe, DopoDomani, velocita_massima NB maiuscole distinte dalle minuscole Var1, var1 e VAR1 tre diversi identificatori alcuni identificatori predefiniti e riservati associati a priori a qualche elemento del linguaggio non usabili dal programmatore con significati differenti da quello predefinito Altre parole riservate fanno parte del lessico di base del linguaggio detti parole chiave Esempi scanf printf operazione di ingresso (lettura da standard input) operazione di uscita (scrittura su standard output) programma C è composto da intestazione istruzioni eseguibili racchiuse tra simboli { e intestazione: identificatore predefinito main seguito da una coppia di parentesi ( ) istruzioni: frasi eseguibili del linguaggio, ognuna terminata dal simbolo ; dividiamo istruzioni C in tre tipi: di assegnamento di ingresso/uscita composte 4/ 24

5 assegna a variabile il valore di un espressione variabile = espressione ; Istruzione di assegnamento NB: simbolo = non indica uguaglianza; per questo si usa == espressione può essere valore costante (e.g., 13, a, alfa, ) variabile combinazione di espressioni mediante operatori (es. aritmetici +,, *, /) e parentesi NB: divisione / tra interi calcola in quoto (quoziente troncato) tra reali (float) calcola il quoziente (con parte frazionaria) Un operatore aritmetico (forse) nuovo: resto della divisione intera, o modulo % es. 17%5 valutato a 2, 15%5 valutato a 0 Esempi di istruzioni di assegnamento x = 23; w = 'a'; y = z; alfa = x + y; x = x + 1; x = (x + 1) % 2; x = (x + 1) % 10; esecuzione di istruzione di assegnamento valutazione dell espressione (valore delle variabili è memorizzato nelle celle corrispondenti) memorizzazione del risultato nella variabile a sinistra del simbolo = Esempio: se la cella della variabile a contiene il valore 45 e z il valore 5, l istruzione x = (a z)/10; immagazzina il valore 4 nella (cella della) variabile x 5/ 24

6 Istruzioni di ingresso e uscita (NB: versione semplificata, per il momento) scanf ingresso-lettura printf uscita-scrittura seguiti da coppia parentesi con l identificatore di una variabile scanf vuole tra parentesi una o più variabili da leggere printf accetta tra le parentesi anche una qualsiasi espressione Esempio scanf(a): scanf(z): printf((a z)/10); 6/ 24

7 Istruzioni composte: occorre fare una (lunga) premessa esecuzione delle istruzioni composte è governata da condizioni condizione (o espressione booleana) espressione con valore vero o falso determinata dal valore delle costanti o variabili in essa contenute usualmente condizioni costruite da altre espressioni mediante operatori di relazione ==,!=, <, >, <=, >=, (relazioni uguale, diverso, minore, etc.) applicati a valori di tipo NON logico, costruiscono condizioni semplici operatori logici:!,, && (negazione (NOT), disgiunzione (OR), congiunzione (AND) applicati a condizioni, costruiscono condizioni composte TAVOLE DI VERITÀ DEGLI OPERATORI LOGICI A F V! A V F negazione (NOT)!A B F V A F F V V V V disgiunzione (OR) A B A B F V F F F V F V congiunzione (AND) A && B (V = vero; F = falso) 7/ 24

8 Esempi x == 0 alfa > beta && x!= 3!((a + b)*3 > x a < c) se x=0, alfa=1, beta=2, a=3, b=4 e c=5 le tre condizioni valgono rispettivamente: V, F e F. regole di precedenza tra gli operatori logici, simili a quelle dell aritmetica Esempio: x > 0 y == 3 && z > w && eseguito prima di, così come nell espressione (a + b * c) * eseguito prima di + Priorità descrescente negazione (NOT)! operatori di relazione <, >, <=, >= uguaglianza ==, disuguaglianza!=, congiunzione (AND) && disgiunzione (OR) Utili regole di equivalenza: tra espressioni logiche doppie negazioni si elidono:!!a == a Leggi di De Morgan!(a && b) ==!a!b!(a b) ==!a &&!b Esempi!( (a >= 5) && (a <= 10) ) == [De Morgan] (!(a >= 5)!(a <= 10) ) == [proprietà e ] (!!(a < 5)!!(a > 10) ) == [doppia negazione ] ( (a < 5) (a > 10) ) 8/ 24

9 TAVOLE DI VERITA Rappresenta tutti i possibili modi di valutare un espressione booleana (contenente come espressioni elementari solo variabili logiche proposizionali) Una riga per ogni possibile assegnamento di valori logici alle variabili (n variabili logiche 2 n possibili assegnamenti) Una colonna per ogni sottoformula (inclusa la sottoformula stessa) Esempio: espressione (! A ) ( B && C ) (NB: parentesi non necessarie) 9/ 24

10 istruzione condizionale eseguire una di due (sequenze di) istruzioni alternative in base al valore di una condizione tre componenti dell istruzione condizione (racchiusa tra parentesi tonde) azione se condizione vera azione se condizione falsa (questa è facoltativa, può essere omessa) se azioni composte da più di un istruzione necessario racchiuderle tra parentesi graffe (opzionali per sequenze di una sola istruzione) Esempi if (x < lim -1) x = x + 1; else x = 0; if (x % 7 == 0) printf( x multiplo di 7 ); else printf( x non multiplo di 7 ); printf( x ); if (x % 7!= 0) printf( non ); printf( multiplo di 7 ); printf( x ); if (x % 7!= 0) { printf( non ); printf( multiplo di 7 ); 10 / 24

11 Esempi di istruzione condizionale if ( x % 5 == 0 ) if (x % 7 == 0 ) printf( x multiplo di 5 e anche di 7 ); else printf( x multiplo di 5 ma non di 7 ); else printf( x non multiplo di 5 ); if ( x % 5 == 0 ) if (x % 7 == 0 ) printf( x multiplo di 5 e anche di 7 ); else printf( x multiplo di 5 ma non di 7 ); if ((x+y)*(z-2) > (23+v)) { z = x + 1; y = 13 + x; if ( (x == y && z >3) w!= y ) z = 5; else { y = z + w*y; x = z; NB: incolonnamento irrilevante 11 / 24

12 istruzione iterativa (ciclo) ripetizione di una sequenza di istruzioni fintantoché una condizione è verificata Due componenti condizione racchiusa tra parentesi tonde sequenza di istruzioni fra parentesi graffe (corpo del ciclo) come al solito, parentesi graffe facoltative per sequenze di una sola istruzione Esempi x = 5; while ( x >= 0 ) x = x 1; n = 64; ln = 0; while ( n > 1 ) { ln = ln + 1; n = n / 2; Esecuzione dell istruzione iterativa: prima valuta la condizione se condizione falsa non eseguito corpo del ciclo e passa all istruzione successiva altrimenti esegue una volta corpo del ciclo e ricomincia (valuta la condizione etc.) NB: componibilità tra istruzioni è completa un istruzione composta può contenere qualsiasi istruzione, anche composta 12 / 24

13 Primi esempi di programmi C due programmi distinti (ed equivalenti) per leggere due numeri ed emettere il maggiore uso dell istruzione condizionale /* Programma NumeroMaggiore prima versione */ main() { scanf(x); scanf(y); if ( x > y ) z = x; else z = y; printf(z); /* Programma NumeroMaggiore seconda versione */ main() { scanf(x); scanf(y); if ( x > y ) printf(x); else printf(y); NB: uso di commenti: testo racchiuso tra /* e */ non fanno parte del programma ignorati dalla macchina possono comparire ovunque calcola somma di sequenza di numeri diversi da 0, terminata da uno 0 una variabile, somma inizializzata a 0, una variabile numero per gli addendi /* Programma SommaSequenza */ main() { somma = 0; scanf(numero); while (numero!= 0) { somma = somma + numero; scanf(numero); printf(somma); 13 / 24

14 programma che simula il semplice gioco fra due giocatori "carta-forbici-sasso": ogni giocatore sceglie simbolo fra i tre: carta ( c ), forbici ( f ) e sasso ( s ) (sasso batte forbici, forbici batte carta, carta batte sasso) legge due caratteri dallo Standard Input primo dà scelta primo giocatore, secondo del secondo giocatore scrive vincitore su Standard Output, o indica parità se simboli uguali /* Programma GiocoCartaForbiciSasso */ main() { scanf(primo); scanf(secondo); if (Primo == Secondo) printf("il gioco è pari"); else if ( ( Primo == 's' && Secondo == 'f') ( Primo == 'f' && Secondo == 'c') ( Primo == 'c' && Secondo == 's') ) printf("il vincitore è il giocatore n. 1"); else printf("il vincitore è il giocatore n. 2"); NB uso di istruzioni composte annidate NB uso di incolonnamento (rientri) per favorire leggibilità solo stile, ininfluente sull esecuzione del programma 14 / 24

15 calcolo del massimo comune divisore (MCD) tra due numeri n e m prima soluzione applica la definizione di MCD scandisci tutti i numeri tra 1 e il minimo tra m e n per ognuno di essi stabilisci se è un divisore comune a m e n (x è divisore di y se e solo se y % x == 0 ) ogni numero divisore sia di m sia di n memorizzato come (provvisorio) MCD inizialmente variabile per MCD riceve valore 1 /* Programma MaxComDiv */ main() { scanf(n); scanf(m); mcd = 1; if (n <= m) min = n; else min = m; contatore = 1; while (contatore <= min) { if ( n % contatore == 0 && m % contatore == 0) mcd = contatore; contatore = contatore + 1; printf(mcd); 15 / 24

16 algoritmo di Euclide se m = n, MCD(m,n) = m (o n) se m n (e.g., m > n) allora MCD(m,n) = MCD(m n,n) ciò perchè se m > n divisori comuni a m e n coincidono con divisori comuni a m n e n il ragionamento può essere ripetuto ripetendo prima o poi si arriva a una coppia di numeri uguali da ciò si deriva il seguente programma C, semplice ed elegante /* Programma AlgoritmoEuclide */ main() { scanf(m); scanf(n); while (m!= n) { if (m > n) m = m n; else /* qui sicuramente n > m perché corpo eseguito solo se m!= n */ n = n m; mcd = n; printf(mcd); efficienza: talvolta preferibile il primo algoritmo (e.g., m = , n = 6) talaltra il secondo (e.g., m = 1000, n = 500) 16 / 24

17 programmi C reali programmi visti finora non hanno dichiarazioni variabili istruzioni I/O nel formato corretto Esempio: programma SommaSequenza, completato, diventa: /* Programma SommaSequenza */ #include <stdio.h> main() { int numero, somma; somma = 0; scanf("%d", &numero); while (numero!= 0) { somma = somma + numero; scanf("%d", &numero); printf("la somma dei numeri è: %d\n", somma); programma C deve contenere, nell ordine: direttive per il compilatore identificatore predefinito main seguito dalle parentesi () un blocco, cioè: la parte dichiarativa la parte esecutiva racchiuse tra { e parte dichiarativa contiene la sezione della dichiarazione delle costanti; la sezione della dichiarazione delle variabili. 17 / 24

18 dichiarazioni: maggior fatica compensata dalla diagnostica Esempio, nel programma x = alfa; alba = alfa + 1; la b di alba è scritta per errore al posto di f senza la dichiarazione, macchina C interpreta alba come una nuova variabile invece il compilatore C segnala alba come una variabile non dichiarata Parte dichiarazione di variabili lista di dichiarazioni, ognuna elenca variabili usate nella parte esecutiva attribuisce il tipo ( caratteristiche che ne regolano l uso) per ora solo tre tipi semplici: interi (int), reali (float), caratteri (char) Esempi: float x, y; int i, j; char simb; equivalentemente float x; int i, j; char simb; float y; se nella stessa dichiarazione presenti più variabili (separate da, ) sono tutte dello stesso tipo tipo di una variabile stabilisce insieme dei valori assunti dalla variabile operazioni su di essa e loro effetto 18 / 24

19 Parte dichiarazione di costanti lista di dichiarazioni, ognuna associa STABILMENTE valore a identificatore NB si possono raggruppare più costanti dello stesso tipo in una stessa dichiarazione Esempi const float PiGreco = 3.14; const float PiGreco = , e = 2.718; const int N = 100, M = 1000; const char CAR1 = 'A', CAR2 = 'B'; compilatore segnala come errore ogni assegnamento a una costante nella parte eseguibile utilità delle dichiarazioni di costanti rappresentazione simbolica aiuta percezione del significato parametrizzazione dei programmi riutilizzabili al cambiare di circostanze esterne in un programma dichiaro const float PiGreco= 3.14; poi uso PiGreco più volte nella parte esecutiva se varia precisione basta cambiare solo dichiarazione costante const float PiGreco= ; 19 / 24

20 istruzioni di ingresso/uscita; scanf e printf printf(stringa di controllo, elementi da stampare); scanf(stringa di controllo, elementi da leggere); stringa di controllo: lista di elementi, separati da virgola, da stampare (espressioni) o leggere (variabili precedute da &) per printf per scanf stringa di controllo contiene caratteri di conversione o di formato %d intero decimale %f numero reale %c carattere %s stringa \n manda a capo per printf anche altri caratteri, che si vogliono stampare inframezzati agli elemeti da stampare Esempi: int catdipend; float stipmedio;... catdipend = 6; stipmedio = ; printf ("Lo stipendio annuo dei dipendenti di categoria %d \nè pari a EUR %f", catdipend, stipmedio); visualizza sullo schermo la scrtta: Lo stipendio annuo dei dipendenti di categoria 6 è pari a EUR / 24

21 char iniznome, inizcognome; iniznome = G ; inizcognome = M ; printf("%s\n%c%c\n\n%s\n", "Questo programma è stato scritto da", iniznome, inizcognome, "Buon lavoro!"); Questo programma è stato scritto da GM Buon lavoro! char c1, c2, c3; int i; float x;... scanf("%c%c%c%d%f", &c1, &c2, &c3, &i, &x); l utente può inserire i dati ABC NB: non dimenticare & davanti a nomi di variabili lette con scanf (errore frequentissimo e non rilevato dal compilatore) ogni programma che utilizza printf e scanf deve includere testualmente libreria stdio.h per farlo si scrive direttiva prima della testata main() #include <stdio.h> rivolta alla parte del compilatore chiamata preprocessore include copia file stdio.h nel file del programma NB: a rigore scanf e printf non sono istruzioni ma funzioni predefinite (sottoprogrammi) appartengono alla standard library chiamata stdio.h 21 / 24

22 Esempi di (veri) programmi C /* PrimoProgrammaC */ #include <stdio.h> main() { printf("questo è il mio primo programma in C\n"); NB parte dichiarativa vuota /* Programma SommaDueInteri */ #include <stdio.h> main() { int a, b, somma; scanf("%d%d", &a, &b); somma = a + b; printf("la somma di a+b è:\n%d \narrivederci!\n", somma); mettendo 3 e 5 su standard input (tastiera) sullo Standard Output (video) esce La somma di a+b è: 8 Arrivederci! 22 / 24

23 Espressioni intere come condizioni in C In C le espressioni intere e booleane sono intercambiabili: esiste una regola di conversione automatica 0 falso qualsiasi valore!=0 vero Ciò utilizzato in pratica (anche se non bello dal punto di vista concettuale) per memorizzare in variabili intere delle condizioni (valori di espressioni logiche) utilizzare espressioni aritmetiche al posto di condizioni nelle istruzioni if e while int numero, somma; somma = 0; scanf("%d", &numero); while (numero!= 0){ somma = somma + numero; scanf("%d", &numero); printf("la somma dei numeri digitati è: %d\n", somma); int numero, somma; somma = 0; scanf("%d", &numero); while (numero){ /* NB!! */ somma = somma + numero; scanf("%d", &numero); printf("la somma dei numeri digitati è: %d\n", somma); 23 / 24

24 Altro esempio: cosa fa il seguente programma? int x, y, numeridiversi;... scanf("%d %d", &x, &y); numeridiversi = (x!= y); if (numeridiversi) while (numeridiversi){ if (x>y) x = x y; else y = y x; numeridiversi = (x!= y); printf("%d", x); cosa succede se nel codice qui sopra tolgo la parte if (numeridiversi)? 24 / 24

Codifica degli algoritmi in un linguaggio di alto livello

Codifica degli algoritmi in un linguaggio di alto livello Codifica degli algoritmi in un linguaggio di alto livello problema della formulazione di un algoritmo algoritmo formulato per essere eseguito automaticamente preciso e dettagliato formulato da e comunicato

Dettagli

Codifica degli algoritmi in un linguaggio di alto livello

Codifica degli algoritmi in un linguaggio di alto livello Codifica degli algoritmi in un linguaggio di alto livello problema della formulazione di un algoritmo algoritmo formulato per essere eseguito automaticamente preciso e dettagliato formulato da e comunicato

Dettagli

La Programmazione. Cos è la programmazione? Concetti preliminari

La Programmazione. Cos è la programmazione? Concetti preliminari La Programmazione Cos è la programmazione? Concetti preliminari 1 Sommario La programmazione, questa sconosciuta Programmiamo Macchine Astratte Linguaggi di basso e alto livello e loro implementazione

Dettagli

Codifica degli algoritmi in linguaggio di alto livello

Codifica degli algoritmi in linguaggio di alto livello Corso di Fondamenti di Informatica Corso di Laurea in Ingegneria Meccanica (A-K) Codifica degli algoritmi in linguaggio di alto livello Ing. Agnese Pinto 1 di 44 Codifica degli algoritmi in linguaggio

Dettagli

Struttura dei programmi C

Struttura dei programmi C Programmi C Struttura dei Programmi C Dichiarazione delle variabili Operazioni di Ingresso/Uscita Fondamenti di Informatica 1 Struttura dei programmi C Un programma C deve contenere, nell'ordine: una parte

Dettagli

ESECUZIONE DI PROGRAMMI C SU MACCHINE REALI. Docente: Giorgio Giacinto AA 2008/2009. formalizzazione degli algoritmi in linguaggio C

ESECUZIONE DI PROGRAMMI C SU MACCHINE REALI. Docente: Giorgio Giacinto AA 2008/2009. formalizzazione degli algoritmi in linguaggio C Università degli Studi di Cagliari Corso di Laurea Specialistica in Ingegneria per l Ambiente ed il Territorio Corso di Laurea Specialistica in Ingegneria Civile - Strutture FONDAMENTI DI INFORMATICA 2

Dettagli

LABORATORIO di INFORMATICA

LABORATORIO di INFORMATICA Università degli Studi di Cagliari Corso di Laurea Magistrale in Ingegneria per l Ambiente ed il Territorio LABORATORIO di INFORMATICA A.A. 2010/2011 Prof. Giorgio Giacinto CODIFICA DEGLI ALGORITMI IN

Dettagli

ESECUZIONE DI PROGRAMMI C SU MACCHINE REALI. Docente: Giorgio Giacinto AA 2009/2010

ESECUZIONE DI PROGRAMMI C SU MACCHINE REALI. Docente: Giorgio Giacinto AA 2009/2010 Università degli Studi di Cagliari Corso di Laurea Specialistica in Ingegneria per l Ambiente ed il Territorio Corso di Laurea Specialistica in Ingegneria Civile - Strutture FONDAMENTI DI INFORMATICA 2

Dettagli

LEZIONE 1 LE BASI DEL LINGUAGGIO C

LEZIONE 1 LE BASI DEL LINGUAGGIO C LEZIONE 1 LE BASI DEL LINGUAGGIO C Simone Marchesini Roberto Pagliarini Dipartimento di Informatica Università di Verona COS È? Il C è un linguaggio di programmazione che permette di salvare i valori in

Dettagli

Introduzione al Linguaggio C

Introduzione al Linguaggio C Introduzione al Linguaggio C Informatica B a.a. 2018 / 2019 Francesco Trovò 19 Settembre 20178 francesco1.trovo@polimi.it Intermezzo: Cosa fa Questo Algoritmo? 1. Alzatevi tutti in piedi 2. Ognuno di voi

Dettagli

Introduzione al Linguaggio C

Introduzione al Linguaggio C Introduzione al Linguaggio C Informatica B, AA 2018/2019 Luca Cassano 19 Settembre 2018 luca.cassano@polimi.it Linguaggi di Programmazione Programmazione a Basso / Alto Livello Linguaggio macchina: poche

Dettagli

2 Operatori matematici e costrutto if

2 Operatori matematici e costrutto if Questa dispensa propone esercizi sulla scrittura di algoritmi, in linguaggio C, utili alla comprensione delle operazioni tra numeri e del costrutto condizionale if. Si introducono anche le due funzioni

Dettagli

Ambiente di programmazione

Ambiente di programmazione Introduzione al C Ambiente di programmazione editor compilatore interprete linker (collegatore) debugger Cosa useremo noi? VirtualBox gcc Alcuni difetti del linguaggio di von Neumann Meglio questo: 0 READ

Dettagli

Ambiente di programmazione

Ambiente di programmazione Introduzione al C Ambiente di programmazione editor compilatore interprete linker (collegatore) debugger Cosa useremo noi? gcc Alcuni difetti del linguaggio di von Neumann Meglio questo: 0 READ 1 STORE

Dettagli

Esercitazione 2. Espressioni booleane Il comando if-else

Esercitazione 2. Espressioni booleane Il comando if-else Esercitazione 2 Espressioni booleane Il comando if- Espressioni booleane L espressione (i==100) è un espressione booleana. La sua valutazione può restituire solo uno dei due valori booleani true = 1 (in

Dettagli

Algoritmi e basi del C

Algoritmi e basi del C Algoritmi e basi del C Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 24 Agosto 2015 Benvenuti nel fantastico mondo del C 2 Il primo programma: ciao mondo 3 Ciao Mondo: stdio.h Come

Dettagli

Algoritmi e basi del C Struttura di un programma

Algoritmi e basi del C Struttura di un programma Algoritmi e basi del C Struttura di un programma Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 11 Marzo 2014 Informazione: dato + significato Che giorno è oggi? 14 Marzo o anche

Dettagli

Introduzione al linguaggio C

Introduzione al linguaggio C Introduzione al linguaggio C Abbiamo già visto come un programma non sia altro che un algoritmo codificato in un linguaggio di programmazione. Problema: quale linguaggio scegliere per la codifica di un

Dettagli

Struttura di un. Struttura dei programmi C

Struttura di un. Struttura dei programmi C Parte 4 Struttura di un Programma Struttura dei programmi C Un programma C deve essere contenuto in uno o più file (salvo diversa specifica, per ora si assume in un file): 1. Una parte contenente direttive

Dettagli

Dichiarazioni e tipi predefiniti nel linguaggio C

Dichiarazioni e tipi predefiniti nel linguaggio C Politecnico di Milano Dichiarazioni e tipi predefiniti nel linguaggio C Variabili, costanti, tipi semplici, conversioni di tipo. Premessa Programmi provati sul compilatore Borland C++ 1.0 Altri compilatori:

Dettagli

Indice. Obiettivi della programmazione in linguaggi di alto livello (2) Obiettivi della programmazione in linguaggi di alto livello (1)

Indice. Obiettivi della programmazione in linguaggi di alto livello (2) Obiettivi della programmazione in linguaggi di alto livello (1) Indice Introduzione alla programmazione con linguaggi di alto livello -- -- Vito Perrone Obiettivi della programmazione in linguaggi di alto livello La macchina astratta C Struttura di un programma C Istruzioni

Dettagli

Informatica B a.a 2005/06 (Meccanici 4 squadra) PhD. Ing. Michele Folgheraiter

Informatica B a.a 2005/06 (Meccanici 4 squadra) PhD. Ing. Michele Folgheraiter Informatica B a.a 2005/06 (Meccanici 4 squadra) Scaglione: da PO a ZZZZ PhD. Ing. Michele Folgheraiter Funzionamento macchina di von Neumann clock Memoria Centrale: Tutta l informazione prima di essere

Dettagli

Linguaggi di Programmazione

Linguaggi di Programmazione Linguaggi di Programmazione 1 C-Introduzione.tex: Versione 1.0, aa 2005-2006 Linguaggi di programmazione (1) Sono linguaggi che permettono la codifica di algoritmi in modo da renderli eseguibili, direttamente

Dettagli

Algoritmi e basi del C Struttura di un programma

Algoritmi e basi del C Struttura di un programma Algoritmi e basi del C Struttura di un programma Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 17 Marzo 2015 Compitini Compitini di INFO: 24 Aprile 2015 4.15pm @ C.G.1 (Ed. 9) 21

Dettagli

Laboratorio di Programmazione

Laboratorio di Programmazione Laboratorio di Programmazione (Laurea triennale in matematica) Lezione 3 Analisi dettagliata di un programma /* commento */ Possono estendersi su più linee apparire in qualsiasi parte del programma. Alternativamente

Dettagli

Introduzione alla programmazione C++ Argomenti. Macchina astratta C

Introduzione alla programmazione C++ Argomenti. Macchina astratta C Introduzione alla programmazione C++ Ingegneria Biomedica aa 2003/04 II sem 1999/2000 Argomenti Macchina astratta C Variabili, istruzioni, assegnamento Istruzioni di ingresso/uscita Programma Istruzione

Dettagli

Introduzione alla programmazione in linguaggio C

Introduzione alla programmazione in linguaggio C Introduzione alla programmazione in linguaggio C Il primo programma in C commento Header della libreria Funzione principale Ogni istruzione in C va terminata con un ; Corso di Informatica AA. 2007-2008

Dettagli

Il linguaggio C. Prof. E. Occhiuto INFORMATICA 242AA a.a. 2010/11 pag. 1

Il linguaggio C. Prof. E. Occhiuto INFORMATICA 242AA a.a. 2010/11 pag. 1 Il linguaggio C I linguaggi di programmazione ad alto livello sono linguaggi formali ( sintassi e semantica formalmente definite) però sono compatti e comprensibili. Le tipologie di linguaggi sono: procedurali

Dettagli

1 Operatori matematici e costrutto if

1 Operatori matematici e costrutto if Questa dispensa propone esercizi sulla scrittura di algoritmi, in linguaggio C, utili alla comprensione delle operazioni tra numeri e del costrutto condizionale if. Si introducono anche le due funzioni

Dettagli

Dati due punti sul piano calcolare la loro distanza

Dati due punti sul piano calcolare la loro distanza Introduzione al C Primo esempio in C Dati due punti sul piano calcolare la loro distanza Soluzione: la distanza fra due punti si calcola secondo il teorema di Pitagora, con la formula: y Distanza = (lato12

Dettagli

Introduzione al C. Informatica Generale - Introduzione al C Versione 1.0, aa p.1/17

Introduzione al C. Informatica Generale - Introduzione al C Versione 1.0, aa p.1/17 Introduzione al C Informatica Generale - Introduzione al C Versione 1.0, aa 2005-2006 p.1/17 Linguaggi di programmazione Sono linguaggi che permettono la codifica di algoritmi in modo da renderli eseguibili,

Dettagli

Tipi di dato primitivi

Tipi di dato primitivi Tipi di dato primitivi (oltre int) Tipi di dato primitivi int (già trattati) Valori logici (ricordati) Valori reali Valori carattere Informatica - A.A. 2009/2010 - Tipi di dato 2 1 Valori logici (il caso

Dettagli

Algoritmi, Strutture Dati e Programmi. UD 2.b: Programmazione in Pascal

Algoritmi, Strutture Dati e Programmi. UD 2.b: Programmazione in Pascal Algoritmi, Strutture Dati e Programmi : Programmazione in Pascal Prof. Alberto Postiglione AA 2007-2008 Università degli Studi di Salerno Il Linguaggio di Programmazione Pascal Esistono molti linguaggi

Dettagli

Elementi lessicali. Lezione 4. La parole chiave. Elementi lessicali. Elementi lessicali e espressioni logiche. Linguaggi di Programmazione I

Elementi lessicali. Lezione 4. La parole chiave. Elementi lessicali. Elementi lessicali e espressioni logiche. Linguaggi di Programmazione I Lezione 4 Elementi lessicali e espressioni logiche Matricole 2-3 Elementi lessicali il linguaggio C ha un suo vocabolario di base i cui elementi sono detti token esistono 6 tipi di token: parole chiave

Dettagli

Esercitazione 2. Variabili e Tipi Input e Output Assegnamenti Il comando if-else

Esercitazione 2. Variabili e Tipi Input e Output Assegnamenti Il comando if-else Esercitazione 2 Variabili e Tipi Input e Output Assegnamenti Il comando if-else Espressioni aritmetiche /* Scrivere un programma che calcola l area e la circonferenza di un cerchio di raggio 20 cm */ #include

Dettagli

Introduzione al Linguaggio C

Introduzione al Linguaggio C Introduzione al Linguaggio C Informatica B AA 2014 / 2015 Giacomo Boracchi 8 Ottobre 2014 giacomo.boracchi@polimi.it Linguaggi di Programmazione Programmazione a Basso / Alto Livello Linguaggio macchina:

Dettagli

Lezione 6 Introduzione al C++ Mauro Piccolo

Lezione 6 Introduzione al C++ Mauro Piccolo Lezione 6 Introduzione al C++ Mauro Piccolo piccolo@di.unito.it Linguaggi di programmazione Un linguaggio formale disegnato per descrivere la computazione Linguaggi ad alto livello C, C++, Pascal, Java,

Dettagli

Iterazione indeterminata

Iterazione indeterminata Iterazione indeterminata In alcuni casi il numero di iterazioni da effettuare non è noto prima di iniziare il ciclo, perché dipende dal verificarsi di una condizione. Esempio: Leggere una sequenza di interi

Dettagli

IL PRIMO PROGRAMMA IN C

IL PRIMO PROGRAMMA IN C IL PRIMO PROGRAMMA IN C LO SCOPO Si vuole scrivere un programma in linguaggio C che chieda all utente di introdurre da tastiera due numeri interi e visualizzi il valore della loro somma sul video SOLUZIONE

Dettagli

1

1 Manuali di C Linguaggio C B. W. Kernigan, D. M. Ritchie Jackson La guida completa al C H. Schildt McGraw-Hill Fondamenti di Informatica 1 Linguaggio C Creato nei primi anni 70 per sviluppare il S.O. Unix

Dettagli

Aspetti fondamentali della programmazione (con riferimento al linguaggio C e C++)

Aspetti fondamentali della programmazione (con riferimento al linguaggio C e C++) Aspetti fondamentali della programmazione (con riferimento al linguaggio C e C++) 1 Codifica degli algoritmi algoritmo formulato per essere eseguito automaticamente preciso ed eseguibile linguaggio macchina

Dettagli

Sviluppo di programmi

Sviluppo di programmi Sviluppo di programmi Per la costruzione di un programma conviene: 1. condurre un analisi del problema da risolvere 2. elaborare un algoritmo della soluzione rappresentato in un linguaggio adatto alla

Dettagli

C: primi elementi. Lezione 4

C: primi elementi. Lezione 4 C: primi elementi Lezione 4 Evoluzione del BCPL (1967) e B (1970), entrambi typeless Sviluppato da Dennis Ritchie nel 1972 ed implementato per il PDP-11 Usato per lo sviluppo del sistema operativo UNIX

Dettagli

Sviluppo di programmi

Sviluppo di programmi Sviluppo di programmi Per la costruzione di un programma conviene: 1. condurre un analisi del problema da risolvere 2. elaborare un algoritmo della soluzione rappresentato in un linguaggio adatto alla

Dettagli

Sunto della scorsa lezione Il linguaggio C. Un Programma con Errori. Il preprocessore. Linguaggi di Programmazione I.

Sunto della scorsa lezione Il linguaggio C. Un Programma con Errori. Il preprocessore. Linguaggi di Programmazione I. Sunto della scorsa lezione 06-10-2003 Il linguaggio C Matricole 2-3 Un programma C è un insieme di funzioni. La funzione è sempre presente Una funzione è un insieme di istruzioni racchiuse tra ogni istruzione

Dettagli

Introduzione al linguaggio C

Introduzione al linguaggio C Linguaggio C Introduzione al linguaggio C Sistemi di sviluppo integrati Noti anche come IDE: Integrated Development Environment Un pacchetto software che permette di scrivere, preprocessare, compilare,

Dettagli

Struttura dei programmi C Nel semplice programma che abbiamo appena analizzato possiamo già vedere la struttura generale di un programma C.

Struttura dei programmi C Nel semplice programma che abbiamo appena analizzato possiamo già vedere la struttura generale di un programma C. Struttura programmi C Struttura dei programmi C Nel semplice programma che abbiamo appena analizzato possiamo già vedere la struttura generale di un programma C. /* DIRETTIVE DI COMPILAZIONE */ #include

Dettagli

L AMBIENTE CODE BLOCKS E L IO

L AMBIENTE CODE BLOCKS E L IO L AMBIENTE CODE BLOCKS E L IO Il primo programma #include main() { printf("ciao Mondo!"); } Il file deve essere salvato con estensione.c Il primo programma in C++ #include using

Dettagli

Linguaggio C: Variabili e assegnamento e semplici comandi di I/O

Linguaggio C: Variabili e assegnamento e semplici comandi di I/O Linguaggio C: Variabili e assegnamento e semplici comandi di I/O Università degli Studi di Brescia Prof. Massimiliano Giacomin Elementi di Informatica e Programmazione Università di Brescia 1 Un programma

Dettagli

Introduzione al C. Introduzione. Linguaggio ad alto livello. Struttura di un programma C

Introduzione al C. Introduzione. Linguaggio ad alto livello. Struttura di un programma C Introduzione 2 Introduzione al C Linguaggio di programmazione ad alto livello (HLL) Sviluppato negli anni 70 (C standard ANSI) Molto diffuso e adatto ad un ampio spettro di applicazioni: Scientifiche Gestionali

Dettagli

del Linguaggio C Istruzioni di iterazione

del Linguaggio C Istruzioni di iterazione Istruzioni i Iterative ti del Linguaggio C Istruzioni di iterazione Le istruzioni di iterazione forniscono strutture di controllo che esprimono la necessità di ripetere una certa istruzione durante il

Dettagli

Programmazione in C. La struttura del programma Variabili, espressioni, operazioni

Programmazione in C. La struttura del programma Variabili, espressioni, operazioni Programmazione in C La struttura del programma Variabili, espressioni, operazioni Struttura del programma // Area quadrato circoscritto // circonferenza /* Author: Lorenzo Course: info */ #include

Dettagli

Algoritmi e basi del C

Algoritmi e basi del C Algoritmi e basi del C Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 3 O/obre 2013 Installation Party Dove: L.06 Quando: Sabato 12 Ottobre 9.00am - 12.00pm 2 WAT Il docente ha messo

Dettagli

Linguaggio C: introduzione

Linguaggio C: introduzione Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2008/2009 Linguaggio C: introduzione La presente dispensa e da utilizzarsi

Dettagli

Pag. 1. La formalizzazione dell informazione: Dati e Diagrammi di Flusso. Codifica degli algoritmi

Pag. 1. La formalizzazione dell informazione: Dati e Diagrammi di Flusso. Codifica degli algoritmi 1 Università degli studi di Parma Dipartimento di Ingegneria dell Informazione Informatica a.a. 2012/13 Informatica Facoltà di Medicina Veterinaria a.a. 2012/13 prof. Stefano Cagnoni La formalizzazione

Dettagli

Università degli Studi di Milano

Università degli Studi di Milano Università degli Studi di Milano Corso di Laurea in Sicurezza dei Sistemi e delle Reti Informatiche Lezione 3 Input/Output elementare. Operatori, espressioni e istruzioni FABIO SCOTTI Laboratorio di programmazione

Dettagli

Linguaggio C Informatica Grafica

Linguaggio C Informatica Grafica Linguaggio C Informatica Grafica Corsi di Informatica Grafica Prof. Manuel Roveri Dipartimento di Elettronica e Informazione roveri@elet.polimi.it Linguaggio C Breve storia Struttura di un programma Variabili

Dettagli

Livello 1 Livello 2 Livello 3

Livello 1 Livello 2 Livello 3 ROADMAP Funzioni e struttura di un programma Tipi, operatori, espressioni Strutture di controllo Livello 1 Livello 2 Livello 3 Input/Output Strutture dati FUNZIONI E STRUTTURA DI UN PROGRAMMA struttura

Dettagli

Espressione di chiamata di funzione

Espressione di chiamata di funzione Avvertenza Quanto segue NON è un libro, ma è una copia dei lucidi usati a lezione che NON sostituisce i libri di testo adottati e consigliati per l insegnamento di Informatica Generale. Questa copia è

Dettagli

Lezione 5 e 6. Fabio Scotti ( ) Laboratorio di programmazione per la sicurezza. Valentina Ciriani ( ) Laboratorio di programmazione

Lezione 5 e 6. Fabio Scotti ( ) Laboratorio di programmazione per la sicurezza. Valentina Ciriani ( ) Laboratorio di programmazione Lezione 5 e 6 - Concetto di blocco - Controllo del flusso di un programma - Costrutti per la scelta if e switch - Costrutti while e for - Operatori in C Fabio Scotti (2004-2009) Laboratorio di programmazione

Dettagli

Struttura dei programmi e Variabili

Struttura dei programmi e Variabili Linguaggio C Struttura dei programmi e Variabili 1 La struttura generale dei programmi! Struttura del programma: Direttive Funzioni Dichiarazioni Istruzioni Di assegnamento direttive Di ingresso e uscita

Dettagli

Linguaggio C. strutture di controllo: strutture iterative. Università degli Studi di Brescia. Docente: Massimiliano Giacomin

Linguaggio C. strutture di controllo: strutture iterative. Università degli Studi di Brescia. Docente: Massimiliano Giacomin Linguaggio C strutture di controllo: strutture iterative Università degli Studi di Brescia Docente: Massimiliano Giacomin Elementi di Informatica e Programmazione Università di Brescia 1 Strutture iterative

Dettagli

Introduzione al C. Introduzione

Introduzione al C. Introduzione Introduzione al C Introduzione 2 Linguaggio di programmazione ad alto livello (HLL) Sviluppato negli anni 70 (C standard ANSI) Molto diffuso e adatto ad un ampio spettro di applicazioni: Scientifiche Gestionali

Dettagli

Il nostro primo vero programma C

Il nostro primo vero programma C Il nostro primo vero programma C I programmi visti finora non sono ancora vero codice C eseguibile mancano un po' di elementi... Che cosa manca per arrivare al vero codice C eseguibile? abbiamo introdotto

Dettagli

Linguaggio C. Generalità sulle Funzioni. Variabili locali e globali. Passaggio di parametri per valore.

Linguaggio C. Generalità sulle Funzioni. Variabili locali e globali. Passaggio di parametri per valore. Linguaggio C Generalità sulle Funzioni. Variabili locali e globali. Passaggio di parametri per valore. 1 Funzioni Generalizzazione del concetto di funzione algebrica: legge che associa a valori delle variabili

Dettagli

Sommario. Lessico, Sintassi e Semantica. Principi Fondamentali. Introduzione e Fondamenti del Linguaggio C

Sommario. Lessico, Sintassi e Semantica. Principi Fondamentali. Introduzione e Fondamenti del Linguaggio C Introduzione e Fondamenti del Corso di Laurea in Ingegneria Civile Politecnico di Bari Sede di Foggia Fondamenti di Informatica Anno Accademico 2011/2012 docente: Prof. Ing. Michele Salvemini Sommario

Dettagli

Sviluppo di programmi

Sviluppo di programmi Sviluppo di programmi FASE 1: Dare un nome al problema partendo dall analisi del problema FASE 2: Scrivere la specifica funzionale FASE 3: Scrittura dell algoritmo FASE 3.1: Introduzione delle variabili

Dettagli

L AMBIENTE CODE BLOCKS E L IO

L AMBIENTE CODE BLOCKS E L IO L AMBIENTE CODE BLOCKS E L IO Il primo programma in C++ #include using namespace std; main() { cout

Dettagli

Informatica. Stefano Lodi. 16 novembre in linguaggio C

Informatica. Stefano Lodi. 16 novembre in linguaggio C Informatica in linguaggio C Stefano Lodi 16 novembre 2005 0-0 Algoritmi, linguaggi, programmi, processi trasformazione di un insieme di dati iniziali in un insieme di risultati finali mediante istruzioni

Dettagli

INPUT/OUTPUT INPUT/OUTPUT

INPUT/OUTPUT INPUT/OUTPUT INPUT/OUTPUT L'immissione dei dati di un programma e l uscita dei suoi risultati avvengono attraverso operazioni di lettura e scrittura C non ha istruzioni predefinite per l'input/output In ogni versione

Dettagli

#include <stdio.h> /* l esecuzione comincia dalla funzione main */ int main()

#include <stdio.h> /* l esecuzione comincia dalla funzione main */ int main() Primi passi Il mio primo programma #include /* l esecuzione comincia dalla funzione main */ int main() { printf( Hello World!\n" ); return 0; /* il programma termina con successo */ } /* fine

Dettagli

Lo scopo. Il primo esperimento. Soluzione informale. Le variabili

Lo scopo. Il primo esperimento. Soluzione informale. Le variabili Lo scopo 2 Il primo esperimento Si vuole scrivere un programma in linguaggio C che chieda all utente di introdurre da tastiera due numeri interi e visualizzi il valore della loro somma sul video Ver. 2.4

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

Precedenza & associatività degli operatori C

Precedenza & associatività degli operatori C Precedenza e Associatività degli Operatori In ogni espressione, gli operatori sono valutati secondo una precedenza stabilita dallo standard, seguendo opportune regole di associatività: La precedenza (o

Dettagli

Prof. Pagani Corrado LINGUAGGIO C: SELEZIONE E CICLI

Prof. Pagani Corrado LINGUAGGIO C: SELEZIONE E CICLI Prof. Pagani Corrado LINGUAGGIO C: SELEZIONE E CICLI IF Ogni linguaggio di programmazione presenta almeno una struttura di controllo decisionale. La sintassi del linguaggio C è la seguente. if ()

Dettagli

Introduzione e Fondamenti del Linguaggio C

Introduzione e Fondamenti del Linguaggio C Introduzione e Fondamenti del Corso di Laurea in Ingegneria Civile Politecnico di Bari Sede di Foggia Fondamenti di Informatica Anno Accademico 2011/2012 docente: Prof. Ing. Michele Salvemini Sommario

Dettagli

L'immissione dei dati di un programma e l uscita dei suoi risultati avvengono attraverso operazioni di lettura e scrittura

L'immissione dei dati di un programma e l uscita dei suoi risultati avvengono attraverso operazioni di lettura e scrittura Input e Output in C Input/Output L'immissione dei dati di un programma e l uscita dei suoi risultati avvengono attraverso operazioni di lettura e scrittura Il C non ha istruzioni predefinite per l'input/output

Dettagli

Corso sul linguaggio C

Corso sul linguaggio C Corso sul linguaggio C Modulo 1 1.1 Istruzioni semplici 1 Prerequisiti Saper progettare algoritmi Saper descrivere algoritmi (NLS, ddf) Conoscere il concetto di espressione 2 1 Introduzione In questa lezione

Dettagli

Il corpo di tutte le funzioni deve essere contenuto tra parentesi graffe

Il corpo di tutte le funzioni deve essere contenuto tra parentesi graffe Primi passi Il mio primo programma #include /* l esecuzione comincia dalla funzione main */ int main() { printf( Hello World!\n" ); return 0; /* il programma termina con successo */ } /* fine

Dettagli

INPUT/OUTPUT L'immissione dei dati di un programma e l uscita dei suoi risultati avvengono attraverso operazioni di lettura e scrittura.

INPUT/OUTPUT L'immissione dei dati di un programma e l uscita dei suoi risultati avvengono attraverso operazioni di lettura e scrittura. INPUT/OUTPUT L'immissione dei dati di un programma e l uscita dei suoi risultati avvengono attraverso operazioni di lettura e scrittura. Il C non ha istruzioni predefinite per l'input/output. In ogni versione

Dettagli

Istruzioni di Controllo

Istruzioni di Controllo Istruzioni di Controllo Programmazione strutturata Ricordiamo i concetti chiave: concatenazione o composizione BLOCCO istruzione condizionale SELEZIONE ramifica il flusso di controllo in base al valore

Dettagli

FONDAMENTI DI INFORMATICA 2

FONDAMENTI DI INFORMATICA 2 Università degli Studi di Cagliari Corso di Laurea Specialistica in Ingegneria per l Ambiente ed il Territorio Corso di Laurea Specialistica in Ingegneria Civile - Strutture FONDAMENTI DI INFORMATICA 2

Dettagli

Le Strutture di controllo Del Linguaggio C. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni

Le Strutture di controllo Del Linguaggio C. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni Le Strutture di controllo Del Linguaggio C Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni STRUTTURE DI CONTROLLO PRIMITIVE SEQUENZA SELEZIONE (o scelta logica) ITERAZIONE NON PRIMITIVE

Dettagli

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Struttura di un programma Java

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Struttura di un programma Java Fondamenti di Informatica INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA 1 Struttura di un programma Java Un programma Java consiste in un insieme di definizioni di classi. In genere

Dettagli

Le direttive del Preprocessore

Le direttive del Preprocessore Le direttive del Preprocessore Prof. Orazio Mirabella Direttive Un compilatore traduce le istruzioni di un programma sorgente in linguaggio macchina Talvolta è conveniente prendere coscienza dell esistenza

Dettagli

Tipi di dato. Il concetto di tipo di dato viene introdotto per raggiungere due obiettivi:

Tipi di dato. Il concetto di tipo di dato viene introdotto per raggiungere due obiettivi: Tipi di dato Il concetto di tipo di dato viene introdotto per raggiungere due obiettivi: esprimere in modo sintetico la loro rappresentazione in memoria, e un insieme di operazioni ammissibili permettere

Dettagli

Qualsiasi programma in C++ segue lo schema:

Qualsiasi programma in C++ segue lo schema: Qualsiasi programma in C++ segue lo schema: #include // libreria che gestisce flusso di input e output using namespace std; // uso di librerie standard del C++ int main() { // dichiarazioni

Dettagli

Ing. Lorenzo Vismara

Ing. Lorenzo Vismara Ing. Lorenzo Vismara ! "# #!$#%&# '(!)&!*)&#*$# +!, +$-.(( #!((%&#, #!& %&) /$#01&&#2! 0#( 3452 $ 6#( 1 2 &## #!7 #89): #;##( 1? )#&)< $9): #@82 #)AA)#&#&$( #7)&#7& @B && ##@A&#C 7 $C#&7 @B A&#)@#7&#

Dettagli

Fasi di creazione di un programma

Fasi di creazione di un programma Fasi di creazione di un programma 1. Studio Preliminare 2. Analisi del Sistema 6. Manutenzione e Test 3. Progettazione 5. Implementazione 4. Sviluppo Sviluppo di programmi Per la costruzione di un programma

Dettagli

Linguaggio Testuale. E un formalismo che consente di rappresentare gli algoritmi mediante semplici istruzioni in linguaggio «parlato»

Linguaggio Testuale. E un formalismo che consente di rappresentare gli algoritmi mediante semplici istruzioni in linguaggio «parlato» Linguaggio Testuale E un formalismo che consente di rappresentare gli algoritmi mediante semplici istruzioni in linguaggio «parlato» Delle volte viene chiamato metalinguaggio, e l algoritmo scritto tramite

Dettagli

Laboratorio di informatica Ingegneria meccanica

Laboratorio di informatica Ingegneria meccanica C: costanti introdotte con #define Laboratorio di informatica Ingegneria meccanica Lezione 4 22 ottobre 2007 Forma: #define nome valore Effetto: ogni occorrenza successiva di nome sarà rimpiazzata con

Dettagli

Linguaggio C Struttura dei programmi

Linguaggio C Struttura dei programmi FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Ing. DAVIDE PIERATTONI Facoltà di Ingegneria Università degli Studi di Udine Linguaggio C Struttura dei programmi 2001 Pier Luca Montessoro - Davide

Dettagli

Introduzione al linguaggio C

Introduzione al linguaggio C INFORMATICA B Ingegneria Elettrica Introduzione al linguaggio C Introduzione Linguaggio di programmazione ad alto livello Sviluppato negli anni 70 (C standard ANSI) Molto diffuso e adatto ad un ampio spettro

Dettagli

Linguaggio C. Tipi predefiniti e operatori. Università degli Studi di Brescia. Docente: Massimiliano Giacomin

Linguaggio C. Tipi predefiniti e operatori. Università degli Studi di Brescia. Docente: Massimiliano Giacomin Linguaggio C Tipi predefiniti e operatori Università degli Studi di Brescia Docente: Massimiliano Giacomin Elementi di Informatica e Programmazione Università di Brescia 1 RICHIAMI char 8 bit Valori interi

Dettagli

Istruzioni. Una istruzione semplice è qualsiasi espressione seguita da un punto e virgola. Esempio x = 0; y = 1;/* due istruzioni */

Istruzioni. Una istruzione semplice è qualsiasi espressione seguita da un punto e virgola. Esempio x = 0; y = 1;/* due istruzioni */ Istruzioni Le istruzioni esprimono azioni che, una volta eseguite, comportano una modifica permanente dello stato interno del programma o del mondo circostante Le strutture di controllo permettono di aggregare

Dettagli

Dott. R. Gori, Dott. A. Rama INFORMATICA 242AA a.a. 2011/12 pag. 1. Le istruzioni iterative permettono di ripetere determinate azioni più volte:

Dott. R. Gori, Dott. A. Rama INFORMATICA 242AA a.a. 2011/12 pag. 1. Le istruzioni iterative permettono di ripetere determinate azioni più volte: Leggere 5 interi, calcolarne la somma e stamparli. Variante non accettabile: 5 variabili, 5 istruzioni di lettura, 5... int i1, i2, i3, i4, i5; scanf("%d", &i1):... scanf("%d", &i5); printf("%d", i1 +

Dettagli

Il C nel C++ Struttura di un linguaggio. regole per la definizione i simboli. regole per la composizione dei simboli

Il C nel C++ Struttura di un linguaggio. regole per la definizione i simboli. regole per la composizione dei simboli Il C nel C++ Struttura di un linguaggio Livello lessicale: regole per la definizione i simboli Livello sintattico: regole per la composizione dei simboli Livello semantico: significato delle strutture

Dettagli