Flusso logico di un programma

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Flusso logico di un programma"

Transcript

1 Fondamenti di Informatica e Programmazione Elementi di Informatica e Progrmmazione prof. Massimiliano Redolfi massimiliano.redolfi@ing.unibs.it 2013/2014 Flusso logico di un programma prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/2014 2

2 Il controllo del flusso di un programma start Nessun controllo di flusso la sequenza di istruzioni eseguite non cambia mai il flusso logico di qualsiasi istanza dell applicazione rimane sempre identico, è fissato al momento della scrittura del codice un modo di programmare un po rigido e poco utile end prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/ Il controllo del flusso di un programma start? Istruzioni di selezione a seconda di una condizione il flusso logico del programma può proseguire in una direzione o in un altra il programma assume una certa dinamicità, può adattarsi alle situazioni esterne end prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/2014 4

3 Il controllo del flusso di un programma start Istruzioni di selezione no T>1000 si Un istruzione di selezione può essere utile per verificare condizioni critiche e nel caso attivare un allarme Allarme!! Avvia lavorazione Blocca impianto Chiaramente si può usare in altri casi end prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/ Il controllo del flusso di un programma start Esegui X Ripeti? si Iterazioni o cicli permettono di ripetere più volte una stesso blocco di istruzioni per certi versi sono simili a istruzioni di selezione in cui un ramo riporta all istruzione condizionale no end prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/2014 6

4 Il controllo del flusso di un programma: esempio Vogliamo scrivere la tabellina del 2 prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/ Il controllo del flusso di un programma: esempio Tabellina del 2: Modo 1 #include <stdio.h> int main(void) { printf( Tabellina del 2\n"); printf( 1x2! 2\n"); printf( 2x2! 4\n"); printf( 3x2! 6\n"); printf( 4x2! 8\n"); printf( 5x2! 10\n"); printf( 6x2! 12\n"); printf( 7x2! 14\n"); printf( 8x2! 16\n"); printf( 9x2! 18\n"); printf( 10x2! 20\n"); return 0; } funziona? il codice è scritto correttamente? prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/2014 8

5 Il controllo del flusso di un programma: esempio Tabellina del 2: Modo 1 #include <stdio.h> int main(void) { printf( Tabellina del 2\n"); printf( 1x2! 2\n"); printf( 2x2! 4\n"); printf( 3x2! 6\n"); printf( 4x2! 8\n"); printf( 5x2! 10\n"); printf( 6x2! 12\n"); printf( 7x2! 14\n"); printf( 8x2! 16\n"); printf( 9x2! 18\n"); printf( 10x2! 20\n"); return 0; } Esistono parti ripetitive nel codice? quindi si potrebbe pensare ad un ciclo Anche se sintatticamente corretto l esempio è da considerarsi ERRATO in quanto rappresenta un pessimo modo di scrivere codice e, soprattutto, pensare (algoritmi ma non solo) prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/ Il controllo del flusso di un programma: esempio Tabellina del 2: Modo 2 #include <stdio.h> int main(void) { printf( Tabellina del 2\n"); int i; for(i=1; i<=10; i++) { printf( %d, i); printf( %d, i*2); printf( \n ); } return 0; } Così è decisamente meglio! Ogni riga della tabellina viene ora scritta automaticamente dalle istruzioni contenute nel ciclo for( ) Se volessimo la tabellina fino a 100? prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/

6 Il controllo del flusso di un programma: for( ) for(i=1; i<=10; i++) { } Il ciclo for è una delle istruzioni di iterazione messe a disposizione dal C e permette di ripetere un insieme di istruzioni per un numero determinato di volte. La forma generale dell istruzione for è: for(<inizializzazione> ; <condizione> ; <incremento>) <istruzione>; prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/ Il controllo del flusso di un programma: for( ) for(i=1; i<=10; i++) { } for(<inizializzazione> ; <condizione> ; <incremento>) <istruzione>; <inizializzazione> Generalmente è un istruzione di assegnamento utilizzata per inizializzare il valore iniziale della variabile utilizzata nel ciclo variabile? ci arriveremo presto per ora si pensi ad i come ad un elemento che può assumere un qualsiasi numero intero. prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/

7 Il controllo del flusso di un programma: for( ) for(i=1; i<=10; i++) { } for(<inizializzazione> ; <condizione> ; <incremento>) <istruzione>; <condizione> La condizione al verificarsi della quale il ciclo ha termine (quando i diventa maggiore di 10) La condizione è una clausola booleana (vero/falso) prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/ Il controllo del flusso di un programma: for( ) for(i=1; i<=10; i++) { } for(<inizializzazione> ; <condizione> ; <incremento>) <istruzione>; <incremento> E un istruzione che definisce il valore di cui la variabile di controllo deve variare al termine di ogni ciclo (nel nostro caso i viene incrementato di un unità) prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/

8 Il controllo del flusso di un programma: for( ) for(i=1; i<=10; i++) { } for(<inizializzazione> ; <condizione> ; <incremento>) <istruzione>; <istruzione> E l istruzione che deve essere eseguita ad ogni ciclo. Può essere un blocco di istruzioni, nel qual caso il blocco deve essere racchiuso tra parentesi graffe Nel nostro caso ad ogni ciclo verranno eseguite le tre istruzioni printf. prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/ Il controllo del flusso di un programma: for( ) for(i=1; i<=10; i++) { } for(<inizializzazione> ; <condizione> ; <incremento>) <istruzione>; Riepilogando: 1. inizializzazione 2. controllo della condizione di uscita, se vera termina ciclo (ossia vai al punto 6) 3. esecuzione istruzione 4. incremento 5. vai al punto 2 6. fine ciclo (cioè vai all istruzione che segue il blocco del ciclo for) prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/

9 Variabili e tipi di dati prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/ Variabili e tipi di dati int i; i=1; i++; i è una variabile un elemento che può assumere un certo insieme di valori. In C le variabili sono tipizzate cioè ad una data variabile è associato un certo tipo di dato prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/

10 Variabili e tipi di dati int i; i=1; i++; Una variabile corrisponde ad una determinata cella di memoria che viene utilizzata per contenerne il valore (meglio la rappresentazione binaria del valore della variabile in un certo formato ) prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/ Variabili e tipi di dati int i; i=1; i++; In C qualsiasi variabile, prima di essere utilizzata DEVE essere dichiarata. Forma generale per la dichiarazione di una variabile: <tipo_variabile> <nome_variabile>; Esempio int i; prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/

11 Variabili e tipi di dati int i; i=1; i++; Esempio di dichiarazione di una variabile i di tipo intero: int i; Nota bene: in C non c è alcuna relazione tra il nome assegnato ad una variabile ed il suo tipo. prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/ Variabili e tipi di dati Stili di programmazione Per convenzioni e stile di programmazione i nomi delle variabili sono scritti in minuscolo. Nel caso di variabili con nomi composti (es: numero di pezzi) si conviene di indicare in maiuscolo la prima lettera di ogni parola che segue la prima eliminando i congiuntivi (numeropezzi quando la situazione è chiara si possono contrarre alcune parole es: npezzi) E una convenzione di stile non un obbligo ma permette di aumentare la leggibilità e manutenibilità del codice prodotto. prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/

12 Variabili e tipi di dati int i; i=1; i++; Più variabili dello stesso tipo possono essere dichiarate contemporanemente utilizzando la forma: <tipo_variabile> <nome_variabile1>, <nome_variabile2>, ; Esempio int i, j, k; Dichiara 3 variabili i, j e k di tipo intero. prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/ Variabili e tipi di dati Tipi base Dimensioni (byte) Range char int 16 o float 32 1E-37 1E+37 (6 cifre di prec.) double E E +308 (10 cifre di prec.) il tipo int può essere a 16 o 32 bit a seconda dell architettura e del compilatore (nei moderni processori ed ambienti int è a 32 bit ma in alcuni micro e DSP e nei vecchi sistemi a 16 bit no) prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/

13 Variabili e tipi di dati: Modificatori di tipo Un modificatore di tipo viene premesso alla dichiarazione del tipo e ne altera il significato per adattarlo a particolari esigenze. I modificatori utilizzabili sono: signed unsigned long short prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/ Variabili e tipi di dati: Modificatori di tipo Esempi d uso: signed int unsigned int (utile perché ne estende il range ai soli numeri positivi ) long int (forza l int a 32 bit) long long int (forza l int a 64 bit) unsigned long long int (int 64 senza segno) prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/

14 Variabili e tipi di dati double tempforno; long int npezzi, nscarti; Dichiara: una variabile di tipo double due variabili di tipo intero a 32 bit prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/ Variabili: inizializzazione Una variabile ha quindi: un tipo un valore (altrimenti servirebbe a ben poco ) Si può inizializzare il valore di una variabile direttamente nella dichiarazione, associando alla variabile un valore costante: <tipo_variabile> <nome_variabile1> [= <costante>]; prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/

15 Variabili: inizializzazione <tipo_variabile> <nome_variabile1> [= <costante>]; int i = 1; Dichiara una variabile di tipo intero e ne inizializza il valore a 1. In C non è necessario inizializzare una variabile prima di utilizzarla, si può quindi scrivere: int i; i = i + 1; Non genera errori in compilazione ma è comunque scorretto!! E un errore! Ma non è un buon modo di programmare in quanto no si è certi del valore attribuito inizialmente alla variabile. prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/ Costanti (o tipi letterali) Ma cos è una costante in C? E un valore predefinito e fisso che il programma non può modificare. Una costante può essere di uno qualsiasi dei tipi principali. prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/

16 Costanti Le costanti numeriche sono specificate tramite numeri (10, 11.3, 1E-6) Le costanti carattere tramite numeri ( o da ) oppure tramite caratteri che devono essere racchiusi tra apici singoli ( a ) (non confonderle con le costanti stringa che sono racchiuse in doppi apici e gestite in modo diverso, in C non esiste il tipo stringa!) prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/ Costanti Si può assegnare ad una costante un etichetta in modo da non scrivere direttamente in più parti del codice uno stesso valore costante La definizione di una costante è simile a quella di una variabile a cui si fa precedere il prefisso const: const <tipo_costante> <nome_costante> = <valore>; prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/

17 Costanti const <tipo_costante> <nome_costante> = <valore>; Esempio: const int NUMERO_TENTATIVI = 10; dichiara una costante NUMERO_TENTATIVI. Seppure la dichiarazione è simile a quella di una variabile sono due entità trattate in modo completamente diverso (più avanti vedremo perché). Ed evidentemente l istruzione NUMERO_TENTATIVI = 3; genera un errore! prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/ Operatori prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/

18 Operatori Gli operatori sono fondamentali in C, ve ne sono di diverse categorie: operatori aritmetici operatori relazionali operatori logici operatiri bit-to-bit operatore di assegnamento prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/ Operatori: assegnamento <nome_variabile> = <espressione> L operatore agisce nel seguente modo: 1. viene valutata l espressione a destra dell uguale 2. viene assegnato il valore ottenuto alla variabile a sinistra L operatore è: utilizzabile in ogni espressione valida non è un istruzione (come in altri linguaggi), è un operatore, quindi esso stesso restituisce un valore (il valore assegnato alla variabile) espressione può essere: una costante un espressione complessa a piacere prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/

19 Operatori: assegnamento <nome_variabile> = <espressione> Esempi: a = 3; a = 3 + 5; a = b + c d; Ma anche: a = b = c + d; prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/ Operatori: assegnamenti multipli a = b = c = 3; Tutte le variabili assegnate assumono lo stesso valore, nel caso a, b e c assumono il valore 3 Vale anche: a = ( b = 2 ) + 1; Che si legge: 1. valuto l espressione a dx del primo uguale (cioè (b = 2) + 1) 2. le () costituiscono precedenze, valuto gli elementi nella () 3. assegno 2 a b 4. il valore dell esp. tra parentesi è 2 5. lo sommo ad 1 6. assegno ad a il valore 3 prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/

20 Operatori: assegnamenti composti Supponiamo di voler incrementare di 10 una variabile, abbiamo imparato che possiamo scrivere: x = x + 10; Ma anche: x+= 10; Questa istruzione viene trasformata dal compilatore in un istruzione equivalente alla precedente x = x + 10; prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/ Operatori: assegnamenti composti Esistono operatori di assegnamento composti per tutti gli operatori binari (cioè gli operatori che agiscono su due operandi) Cioè in generale se si può scrivere: <variabile> = <variabile> <operatore> <espressione> si può anche scrivere: <variabile> <operatore>= <espressione> Esempio: x = x 100; " x -= 100; prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/

21 Operatori: operatori aritmetici +! somma -! sottrazione (meno unario) *! prodotto /! divisione %! modulo --! decremento ++! incremento Esempi prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/ Operatori: efficienza Sebbene x = x + 1 e x++ producano lo stesso effetto non è così in termini di efficienza. Il compilatore ottimizza le istruzioni di incremento e decremento (così come le istruzioni += etc ) rendendo il codice x++ molto più efficiente dell equivalente clausola di assegnamento prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/

22 Operatori: ordini di precedenza All interno di un espressione gli operatori vengono valutati secondo un ordine di precedenza che è massima per gli operatori di incremento e decremento. Ordini di precedenza: (alta precedenza) (bassa precedenza) (meno unario) * / % prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/ Operatori: ordini di precedenza Gli operatori con lo stesso ordine di precedenza vengono valutati dal compilatore da sinistra verso destra. E possibile alterare l ordine di precedenza utilizzando le parentesi tonde (che possono essere annidate una dentro l altra) Che valore assume x? e a? x = ((a = 3 + 7) 3 * 5) + a * 3; prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/

23 Esercizi 1. Provare a scrivere la tabellina del 10 compelta (facile!) 2. Provare a scrivere un programma che genera la serie di fibonacci di ordine n dove n viene richiesto all utente (usare scanf( ) (un po più complesso) prof. Massimiliano Redolfi Fondamenti/Elementi di Informatica e Programmazione 2013/

I/O da tastiera + Alessandra Giordani Lunedì 2 maggio

I/O da tastiera + Alessandra Giordani Lunedì 2 maggio I/O da tastiera + costrutti while e if Alessandra Giordani agiordani@disi.unitn.it Lunedì 2 maggio 2011 http://disi.unitn.it/~agiordani/ Ripasso funzione printf() Usata per stampare il contenuto di una

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

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 - sezione dichiarativa: costanti e variabili

Linguaggio C - sezione dichiarativa: costanti e variabili Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2008/2009 Linguaggio C - sezione dichiarativa: costanti e variabili La presente

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

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

Cast implicito. Il cast è fatto automaticamente quando un tipo più basso viene assegnato ad un tipo più alto. byte short int long float double

Cast implicito. Il cast è fatto automaticamente quando un tipo più basso viene assegnato ad un tipo più alto. byte short int long float double Il cast Cast implicito Il cast è fatto automaticamente quando un tipo più basso viene assegnato ad un tipo più alto Per esempio: byte short int long float double int x = 10; float f; f = x; Il valore di

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

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

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

Corso di Fondamenti di Informatica Il sistema dei tipi in C++

Corso di Fondamenti di Informatica Il sistema dei tipi in C++ Corso di Fondamenti di Informatica Il sistema dei tipi in C++ Anno Accademico Francesco Tortorella Struttura di un programma C++ // Programma semplice in C++ #include int main() { cout

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

Linguaggio C: Espressioni

Linguaggio C: Espressioni Linguaggio C: Espressioni Moreno Marzolla Dipartimento di Informatica Scienza e Ingegneria (DISI) Università di Bologna http://www.moreno.marzolla.name/ 2 Ringraziamenti prof. Mirko Viroli, Università

Dettagli

Laboratorio di Informatica I

Laboratorio di Informatica I Struttura della lezione Lezione : Elementi lessicali del C Vittorio Scarano Corso di Laurea in Informatica Elementi lessicali e token Costanti Identificatori Operatori operatori di incremento/decremento

Dettagli

Laboratorio di Programmazione 1. Docente: dr. Damiano Macedonio Lezione 5 31/10/2013

Laboratorio di Programmazione 1. Docente: dr. Damiano Macedonio Lezione 5 31/10/2013 Laboratorio di Programmazione 1 1 Docente: dr. Damiano Macedonio Lezione 5 31/10/2013 Original work Copyright Sara Migliorini, University of Verona Modifications Copyright Damiano Macedonio, University

Dettagli

Si possono applicare solo a variabili (di tipi interi, floating o puntatori), ma non a espressioni generiche (anche se di questi tipi).

Si possono applicare solo a variabili (di tipi interi, floating o puntatori), ma non a espressioni generiche (anche se di questi tipi). Operatori di incremento e decremento: ++ e -- ++ e -- sono operatori unari con la stessa priorità del meno unario e associatività da destra a sinistra. Si possono applicare solo a variabili (di tipi interi,

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

I Fondamenti del Linguaggio

I Fondamenti del Linguaggio Linguaggio C I Fondamenti del Linguaggio Linguaggio di Programmazione Linguaggio formale per la descrizione di programmi per calcolatori Sintassi vicina al linguaggio umano Se non ci fossero, bisognerebbe

Dettagli

Tipi di dati scalari (casting e puntatori) Alessandra Giordani Lunedì 10 maggio 2010

Tipi di dati scalari (casting e puntatori) Alessandra Giordani Lunedì 10 maggio 2010 Tipi di dati scalari (casting e puntatori) Alessandra Giordani agiordani@disi.unitn.it Lunedì 10 maggio 2010 http://disi.unitn.it/~agiordani/ I tipi di dati scalari I tipi aritmetici, i tipi enumerativi

Dettagli

Laboratorio di Informatica I

Laboratorio di Informatica I Struttura della lezione Lezione 2: Elementi lessicali, casting e while Vittorio Scarano Laboratorio di Informatica I Corso di Laurea in Informatica Università degli Studi di Salerno Soluzione agli esercizi

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

1 PANORAMICA SUL LINGUAGGIO C

1 PANORAMICA SUL LINGUAGGIO C 1 PANORAMICA SUL LINGUAGGIO C 1.1 Le origini del linguaggio C Il C fu inventato e implementato da Dennis Ritchie negli anni 70 su una macchina che impiegava il sistema operativo Unix. Il C è il risultato

Dettagli

Prof. Pagani Corrado INTRODUZIONE AL LINGUAGGIO C

Prof. Pagani Corrado INTRODUZIONE AL LINGUAGGIO C Prof. Pagani Corrado INTRODUZIONE AL LINGUAGGIO C IL LINGUAGGIO C Nel 1972 Dennis Ritchie nei Bell Laboratories progettò il linguaggio C Il linguaggio possiede tutti i costrutti di controllo dei linguaggi

Dettagli

Introduzione alla programmazione. Alice Pavarani

Introduzione alla programmazione. Alice Pavarani Introduzione alla programmazione Alice Pavarani Il linguaggio C Creato da Dennis Ritchie nel 1972 presso i Bell Laboratories Linguaggio di programmazione procedurale, strutturato Linguaggio ad alto livello

Dettagli

Tipi di dato, Alessandra Giordani Lunedì 7 maggio 2011

Tipi di dato, Alessandra Giordani Lunedì 7 maggio 2011 Tipi di dato, memoria e conversioni Alessandra Giordani agiordani@disi.unitn.it Lunedì 7 maggio 2011 http://disi.unitn.it/~agiordani/ Il linguaggio C è esplicitamente tipato: occorre esplicitamente associare

Dettagli

Tipi di dato semplici

Tipi di dato semplici Tipi di dato semplici Perché dichiarare una variabile? 2 Una variabile rappresenta uno spazio di memoria centrale Prima dell esecuzione del programma deve essere chiaro quanto spazio serve al programma

Dettagli

Programmazione C Massimo Callisto De Donato

Programmazione C Massimo Callisto De Donato Università degli studi di Camerino Scuola di scienze e tecnologia - Sezione Informatica Programmazione C Massimo Callisto De Donato massimo.callisto@unicam.it www.cs.unicam.it/massimo.callisto LEZIONE

Dettagli

Variabili e input/ Alessandra Giordani Lunedì 18 marzo

Variabili e input/ Alessandra Giordani Lunedì 18 marzo Variabili e input/ output da tastiera Alessandra Giordani agiordani@disi.unitn.it Lunedì 18 marzo 2013 http://disi.unitn.it/~agiordani/ Es. compilazione helloworld.c 2 Variabili e valori Una variabile

Dettagli

Programmazione in Java (I modulo)

Programmazione in Java (I modulo) Programmazione in Java (I modulo) Lezione 4 Variabili di tipo primitivo. Dichiarazione di costanti Conversioni di tipo: operatore cast Altri operatori di assegnamento Operazioni aritmetiche e di confronto

Dettagli

Informatica AA 2005/06. Programmazione M.A. Alberti. Operatori in Java 1. Operatori in Java. Espressioni aritmetiche. Espressioni booleane

Informatica AA 2005/06. Programmazione M.A. Alberti. Operatori in Java 1. Operatori in Java. Espressioni aritmetiche. Espressioni booleane Operatori in Java Operatori in Java Corso di laurea in Informatica Operatori aritmetici Operatori di uguaglianza e relazionali Operatori logici in espressioni booleane La precedenza degli operatori L associatività

Dettagli

Unità Didattica 2 Linguaggio C. Espressioni, Operatori e Strutture linguistiche per il controllo del flusso

Unità Didattica 2 Linguaggio C. Espressioni, Operatori e Strutture linguistiche per il controllo del flusso Unità Didattica 2 Linguaggio C Espressioni, Operatori e Strutture linguistiche per il controllo del flusso 1 Espressioni e assegnazioni Le espressioni sono definite dalla grammatica: espressione = variabile

Dettagli

Tipi di dato semplici

Tipi di dato semplici Tipi di dato semplici Informatica B Tipi di dati q In C esistono diversi tipi di dato built-in, tra cui int: numeri interi float: numeri con virgola (singola precisione) double : numeri con virgola (doppia

Dettagli

Struttura di un programma C++

Struttura di un programma C++ Struttura di un programma C++ // Programma semplice in C++ #include using namespace std; int main() { cout

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. 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

Primi esempi di programmi. Il tipo int Le variabili Altri tipi interi Operatori di assegnazione

Primi esempi di programmi. Il tipo int Le variabili Altri tipi interi Operatori di assegnazione Primi esempi di programmi Il tipo int Le variabili Altri tipi interi Operatori di assegnazione Il tipo int Un int permette di trattare numeri interi 4 byte (32 bit) con la tecnica del complemento a 2 (ma

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

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

Programmare in C. Maurizio Palesi Salvatore Serrano. Valori. Operazioni. Un insieme di valori del tipo. Per operare su tali valori Tipi

Programmare in C. Maurizio Palesi Salvatore Serrano. Valori. Operazioni. Un insieme di valori del tipo. Per operare su tali valori Tipi MASTER Information Technology Excellence Road (I.T.E.R.) Programmare in C Maurizio Palesi Salvatore Serrano Master ITER Informatica di Base Maurizio Palesi, Salvatore Serrano 1 Tipi di Dati Valori Un insieme

Dettagli

Tipi di dato e variabili. Walter Didimo

Tipi di dato e variabili. Walter Didimo Tipi di dato e variabili Walter Didimo Tipi di dato I dati che possono essere manipolati in un programma si classificano in tipologie differenti, chiamate tipi di dato Esistono due macro tipi di dato in

Dettagli

Istruzioni iterative (o cicliche)

Istruzioni iterative (o cicliche) Dipartimento di Informatica e Sistemistica Antonio Ruberti Sapienza Università di Roma Istruzioni iterative (o cicliche) Corso di Fondamenti di Informatica Laurea in Ingegneria Informatica (Canale di Ingegneria

Dettagli

Fondamenti di Informatica e Programmazione Elementi di Informatica e Progrmmazione

Fondamenti di Informatica e Programmazione Elementi di Informatica e Progrmmazione Fondamenti di Informatica e Programmazione Elementi di Informatica e Progrmmazione prof. Massimiliano Redolfi massimiliano.redolfi@ing.unibs.it 2013/2014 Il controllo del flusso di un programma: esempio

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 5 Controllo del flusso del programma FABIO SCOTTI Indice 1. CONCETTO DI BLOCCO IN C...3 2. DUE

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

L assegnamento. Andrea Marin. a.a. 2011/2012. Università Ca Foscari Venezia Laurea in Informatica Corso di Programmazione part-time

L assegnamento. Andrea Marin. a.a. 2011/2012. Università Ca Foscari Venezia Laurea in Informatica Corso di Programmazione part-time Andrea Marin Università Ca Foscari Venezia Laurea in Informatica Corso di Programmazione part-time a.a. 2011/2012 Abbiamo visto È conveniente definire una macchina astratta C Lo stato della macchina ci

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

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

Variabili. Unità 2. Domenico Daniele Bloisi. Corso di Fondamenti di Informatica Ingegneria delle Comunicazioni BCOR Ingegneria Elettronica BELR

Variabili. Unità 2. Domenico Daniele Bloisi. Corso di Fondamenti di Informatica Ingegneria delle Comunicazioni BCOR Ingegneria Elettronica BELR Corso di Fondamenti di Informatica Ingegneria delle Comunicazioni BCOR Ingegneria Elettronica BELR Domenico Daniele Bloisi Docenti Parte I prof. Silvio Salza salza@dis.uniroma1.it http://www.dis.uniroma1.it/~salza/fondamenti.htm

Dettagli

Assegnazione di una variabile

Assegnazione di una variabile Assegnazione di una variabile Per scrivere un valore dentro una variabile si usa l operatore di assegnazione, che è rappresentato dal simbolo =. Quindi, se scrivo int a; a = 12; assegno alla variabile

Dettagli

Concetti chiave. Istruzioni Iterative. Strutture di controllo iterative while do-while for Cicli annidati

Concetti chiave. Istruzioni Iterative. Strutture di controllo iterative while do-while for Cicli annidati Concetti chiave Istruzioni Iterative Strutture di controllo iterative while do-while for Cicli annidati Altre Espressioni Operatori Aritmetici +, -, *, /, si applicano a qualunque tipo Operatore Aritmetico

Dettagli

Il Linguaggio C. Caratteristiche. Caratteristiche. Esempio di programma in C. Tipi di dato primitivi in C. Dati

Il Linguaggio C. Caratteristiche. Caratteristiche. Esempio di programma in C. Tipi di dato primitivi in C. Dati Caratteristiche Il Linguaggio C Linguaggio sequenziale (lineare), imperativo, strutturato a blocchi usabile anche come linguaggio di sistema software di base sistemi operativi compilatori... FI - Algoritmi

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

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

Espressioni in Linguaggio C

Espressioni in Linguaggio C Concetti chiave Espressioni in Linguaggio C Espressioni Conversioni Implicite Operatori aritmetici Operatore di assegnamento Operatori relazionali Operatori logici Gerarchia e associatività degli operatori

Dettagli

Costanti e Variabili

Costanti e Variabili Parte 3 Costanti e Variabili Identificatori Un identificatore è un nome che viene associato a diverse entità (costanti, tipi, variabili, funzioni, ecc.) e serve ad identificare la particolare entità Gli

Dettagli

Linguaggio C Strutture di controllo

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

Dettagli

Elementi di Informatica A. A. 2016/2017

Elementi di Informatica A. A. 2016/2017 Elementi di Informatica A. A. 2016/2017 Ing. Nicola Amatucci Università degli studi di Napoli Federico II Scuola Politecnica e Delle Scienze di Base nicola.amatucci@unina.it Programmazione C++ Parte 1

Dettagli

Informatica 2 modulo C Massimo Callisto De Donato

Informatica 2 modulo C Massimo Callisto De Donato Università degli studi di Camerino Scuola di scienze e tecnologia - Sezione Informatica Informatica 2 modulo C Massimo Callisto De Donato massimo.callisto@unicam.it www.cs.unicam.it/massimo.callisto LEZIONE

Dettagli

Introduzione al linguaggio C Primi programmi

Introduzione al linguaggio C Primi programmi Introduzione al linguaggio C Primi programmi Violetta Lonati Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica

Dettagli

Esecuzione condizionale. Esecuzione condizionale. Costrutto if. Costrutto if

Esecuzione condizionale. Esecuzione condizionale. Costrutto if. Costrutto if Esecuzione condizionale Esecuzione condizionale Permette l esecuzione di un blocco di codice solo se si verifica una certa condizione SE (condizione è vera) ALLORA esegui istruzioni 2 er. 2.4 also condizione

Dettagli

$QDOLVLGHOSURJUDPPDTXDGUDWR

$QDOLVLGHOSURJUDPPDTXDGUDWR $QDOLVLGHOSURJUDPPDTXDGUDWR /* */ calcolare l area del quadrato #include main(){ int lato, area; printf("lato "); scanf("%d", &lato); if(lato < 0) printf("errore nei dati \n"); else { area =

Dettagli

Linguaggio C - le strutture di controllo: sequenza, selezione, iterazione

Linguaggio C - le strutture di controllo: sequenza, selezione, iterazione Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2008/2009 Linguaggio C - le strutture di controllo: sequenza, selezione, iterazione

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

Rappresentazione binaria delle variabili (int e char)

Rappresentazione binaria delle variabili (int e char) Rappresentazione binaria delle variabili (int e char) int e char son i due tipi utilizzati dal linguaggio C per la rappresentazione di valori interi; ai valori delle variabili del primo tipo sono assegnati

Dettagli

Variabili. Unità 2. Domenico Daniele Bloisi. Corso di Programmazione e Metodi Numerici Ingegneria Aerospaziale BAER

Variabili. Unità 2. Domenico Daniele Bloisi. Corso di Programmazione e Metodi Numerici Ingegneria Aerospaziale BAER Corso di Programmazione e Metodi Numerici Ingegneria Aerospaziale BAER Domenico Daniele Bloisi Docenti Metodi Numerici prof. Vittoria Bruni vittoria.bruni@sbai.uniroma1.it Programmazione prof. Domenico

Dettagli

Linguaggio C: Espressioni

Linguaggio C: Espressioni Linguaggio C: Espressioni Moreno Marzolla Dipartimento di Informatica Scienza e Ingegneria (DISI) Università di Bologna http://www.moreno.marzolla.name/ 2 Ringraziamenti prof. Mirko Viroli, Università

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

Strutture di Controllo Condizionali e Operatori Logici e Relazionali

Strutture di Controllo Condizionali e Operatori Logici e Relazionali Linguaggio C Strutture di Controllo Condizionali e Operatori Logici e Relazionali 1 Strutture di Controllo n Controllano il flusso di esecuzione di un programma Istruzioni di selezione: permettono di selezionare

Dettagli

Laboratorio di Informatica Ingegneria Clinica Lezione 9/11/2011. Prof. Raffaele Nicolussi

Laboratorio di Informatica Ingegneria Clinica Lezione 9/11/2011. Prof. Raffaele Nicolussi Laboratorio di Informatica Ingegneria Clinica Lezione 9/11/2011 Prof. Raffaele Nicolussi FUB - Fondazione Ugo Bordoni Via del Policlinico, 147-00161 Roma Università degli Studi La Sapienza Fondamenti di

Dettagli

Java e i Tipi di dati primitivi. Parte 3

Java e i Tipi di dati primitivi. Parte 3 Java e i Tipi di dati primitivi Parte 3 La nozione di tipo di dato Il tipo del dato consente di esprimere la natura del dato Indica il modo con cui verrà interpretata la sequenza di bit che rappresenta

Dettagli

Tipi elementari. Stefano Ferrari. Università degli Studi di Milano Programmazione. anno accademico

Tipi elementari. Stefano Ferrari. Università degli Studi di Milano Programmazione. anno accademico Tipi elementari Stefano Ferrari Università degli Studi di Milano stefano.ferrari@unimi.it Programmazione anno accademico 2017 2018 Tipi di dato Ogni variabile (e ogni costante) è associata a un tipo, che

Dettagli

Verso i puntatori: Cosa è una variabile?

Verso i puntatori: Cosa è una variabile? Verso i puntatori: Cosa è una variabile? Quando si dichiara una variabile, ad es. int a; si rende noto il nome e il tipo della variabile. Il compilatore alloca l opportuno numero di byte di memoria per

Dettagli

Strutture di Controllo Condizionali e Operatori Logici e Relazionali

Strutture di Controllo Condizionali e Operatori Logici e Relazionali Linguaggio C Strutture di Controllo Condizionali e Operatori Logici e Relazionali 1 Strutture di Controllo! Controllano il flusso di esecuzione di un programma Istruzioni di selezione: permettono di selezionare

Dettagli

Variabili. Unità 2. Corso di Laboratorio di Informatica Ingegneria Clinica BCLR. Domenico Daniele Bloisi

Variabili. Unità 2. Corso di Laboratorio di Informatica Ingegneria Clinica BCLR. Domenico Daniele Bloisi Corso di Laboratorio di Informatica Ingegneria Clinica BCLR Domenico Daniele Bloisi Docente Ing. Domenico Daniele Bloisi, PhD Ricercatore Dipartimento di Ingegneria Informatica, Automatica e Gestionale

Dettagli

Array k-dimensionali

Array k-dimensionali Informatica B a.a 2005/06 (Meccanici 4 squadra) Scaglione: da PO a ZZZZ PhD. Ing. Michele Folgheraiter Array k-dimensionali In C è possibile definire array con più dimensioni (ANSI C massimo k=12), per

Dettagli

Paolo Bison. Fondamenti di Informatica Ingegneria Meccanica Università di Padova A.A. 2008/09

Paolo Bison. Fondamenti di Informatica Ingegneria Meccanica Università di Padova A.A. 2008/09 Linguaggi procedurali Paolo Bison Fondamenti di Informatica Ingegneria Meccanica Università di Padova A.A. 2008/09 Linguaggi procedurali, Paolo Bison, FI08, 2008-09-29 p.1 Linguaggi procedurali classe

Dettagli

IL LINGUAGGIO JAVA. Input, Tipi Elementari e Istruzione Condizionale. Primo esempio di un programma Java

IL LINGUAGGIO JAVA. Input, Tipi Elementari e Istruzione Condizionale. Primo esempio di un programma Java Fondamenti di Informatica IL LINGUAGGIO JAVA Input, Tipi Elementari e Istruzione Condizionale Fondamenti di Informatica - D. Talia - UNICAL 1 Primo esempio di un programma Java Semplicissimo programma

Dettagli

COMPLESSITÀ COMPUTAZIONALE DEGLI ALGORITMI

COMPLESSITÀ COMPUTAZIONALE DEGLI ALGORITMI COMPLESSITÀ COMPUTAZIONALE DEGLI ALGORITMI Fondamenti di Informatica a.a.200.2005/06 Prof. V.L. Plantamura Dott.ssa A. Angelini Confronto di algoritmi Uno stesso problema può essere risolto in modi diversi,

Dettagli

Linguaggio C: Espressioni

Linguaggio C: Espressioni Linguaggio C: Espressioni Moreno Marzolla Dipartimento di Informatica Scienza e Ingegneria (DISI) Università di Bologna http://www.moreno.marzolla.name/ 2 / 34 Ringraziamenti prof. Mirko Viroli, Università

Dettagli

Valutazione di espressioni

Valutazione di espressioni Valutazione di espressioni Stefano Ferrari Università degli Studi di Milano stefano.ferrari@unimi.it Programmazione anno accademico 2016 2017 Blocco Blocco è un insieme di istruzioni consecutive, con un

Dettagli

Assegnamento. Ricordiamo che l esecuzione di x = exp corrisponde a: Esempio: somma = 5; a = 2; somma = somma + a; somma 5 = 7 a 2 2

Assegnamento. Ricordiamo che l esecuzione di x = exp corrisponde a: Esempio: somma = 5; a = 2; somma = somma + a; somma 5 = 7 a 2 2 Assegnamento Assegnamento Ricordiamo che l esecuzione di x = exp corrisponde a: 1. valutare il valore dell espressione exp a destra di = (usando i valori correnti delle variabili); 2. assegnare poi tale

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

IL LINGUAGGIO JAVA. Input, Tipi Elementari e Istruzione Condizionale. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica

IL LINGUAGGIO JAVA. Input, Tipi Elementari e Istruzione Condizionale. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica Fondamenti di Informatica IL LINGUAGGIO JAVA Input, Tipi Elementari e Istruzione Condizionale Fondamenti di Informatica - D. Talia - UNICAL 1 Primo esempio di un programma Java Semplicissimo programma

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

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

Programmazione in Java (I modulo) Lezione 4

Programmazione in Java (I modulo) Lezione 4 Programmazione in Java (I modulo) Lezione 4 Costanti Chiamiamo costanti tutti i valori numerici (interi o con la virgola), i caratteri e le stringhe. Esempio: 2, 3.7, 'y, buongiorno Le costanti numeriche

Dettagli

Informatica 2 modulo C Massimo Callisto De Donato

Informatica 2 modulo C Massimo Callisto De Donato Università degli studi di Camerino Scuola di scienze e tecnologia - Sezione Informatica Informatica 2 modulo C Massimo Callisto De Donato massimo.callisto@unicam.it www.cs.unicam.it/massimo.callisto LEZIONE

Dettagli

Linguaggi di programmazione

Linguaggi di programmazione Linguaggi di programmazione C LINGUAGGI DI PROGRAMMAZIONE Il potere espressivo di un linguaggio è caratterizzato da: quali tipi di dati consente di rappresentare (direttamente o tramite definizione dell

Dettagli

Strutture di Controllo Iterative: Istruzione FOR

Strutture di Controllo Iterative: Istruzione FOR Linguaggio C Strutture di Controllo Iterative: Istruzione FOR 1 Istruzioni iterative n Anche dette cicli n Prevedono l esecuzione ripetitiva di altre istruzioni (corpo del ciclo) n Ad ogni iterazione del

Dettagli

Primi programmi in C

Primi programmi in C Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica In breve Uso del compilatore gcc Struttura di un programma

Dettagli

Espressioni con effetti collaterali

Espressioni con effetti collaterali Espressioni con effetti collaterali Stefano Ferrari Università degli Studi di Milano stefano.ferrari@unimi.it Programmazione anno accademico 2016 2017 Operatore di assegnamento In C l assegnamento (=)

Dettagli

IL LINGUAGGIO JAVA Input, Tipi Elementari e Istruzione Condizionale

IL LINGUAGGIO JAVA Input, Tipi Elementari e Istruzione Condizionale Fondamenti di Informatica IL LINGUAGGIO JAVA Input, Tipi Elementari e Istruzione Condizionale Fondamenti di Informatica - D. Talia - UNICAL 1 Lettura di dati da input In Java la lettura di dati da input

Dettagli

Introduzione al C. Lez. 1 Elementi. Rossano Venturini

Introduzione al C. Lez. 1 Elementi. Rossano Venturini Introduzione al C Lez. 1 Elementi Rossano Venturini rossano@di.unipi.it Pagine del corso http://didawiki.cli.di.unipi.it/doku.php/informatica/all-b/start http://algoritmica.spox.spoj.pl/alglab2013 Lezioni

Dettagli

Dichiarazione di variabili

Dichiarazione di variabili Dichiarazione di variabili ESEMPIO: somma di due numeri

Dettagli

Il potere espressivo di un linguaggio è caratterizzato da: PROGRAMMA = DATI + CONTROLLO

Il potere espressivo di un linguaggio è caratterizzato da: PROGRAMMA = DATI + CONTROLLO LINGUAGGI DI PROGRAMMAZIONE Il potere espressivo di un linguaggio è caratterizzato da: quali tipi di dati consente di rappresentare (direttamente o tramite definizione dell utente) quali istruzioni di

Dettagli

Puntatori. Fondamenti di Programmazione

Puntatori. Fondamenti di Programmazione Puntatori Fondamenti di Programmazione Funzioni utili stdio.h c = getchar(); restituisce un carattere letto da tastiera. Equivale a: scanf( %c, &c); putchar(c); scrive un carattere sullo schermo. Equivale

Dettagli