Laboratorio di Informatica I

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Laboratorio di Informatica I"

Transcript

1 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 Elementi lessicali e token Costanti Identificatori Operatori operatori di incremento/decremento operatori di assegnamento priorità I tipi di dato: la conversione di tipo Altri idiomi di programmazione: la sentinella ed il ciclo while 2 Esercizi Esercizio numero 1 Scrivere un programma C che (1) chiede in input 10 interi e che ne restituisce il numero di essi che sono > 15 (2) chiede in input un numero di interi N (a richiesta dell utente) e ne trova il massimo (3) chiede in input 10 interi e somma tutti gli interi in posizione pari (4) chiede in input 10 interi e somma tutti gli interi > 0 3 /* Eserc.1: chiede in input 10 interi e * fornisce il numero di essi che sono > 15 #define NUMERO_INTERI 10 int i, appoggio, maggiori_15 = 0; for ( i=0; i< NUMERO_INTERI; i++) if (appoggio > 15) maggiori_15 ++; printf ("Maggiori di 15 sono %d\n", maggiori_15); Costante simbolica facilità modifica Ciclo for stampa intero i+1 condizione senza parentesi 4 Esercizio numero 2 Esercizio numero 3 Input numero interi facilità modifica Il primo intero diventa il massimo! Ciclo for parte da 1! cambio del massimo /* Esercizio 2: chiede in input N interi e ne /* Esercizio 3: chiede in input 10 interi e * restituisce il massimo * somma gli interi in posizione pari #define NUMERO_INTERI 10 int i=0, num_interi, appoggio, massimo; printf ("Quanti interi?"); scanf ("%d", &num_interi); int i, appoggio, somma=0; scanf ("%d", &massimo); for ( i=0; i< NUMERO_INTERI; i++) for ( i=1; i< num_interi; i++) if ( i % 2 == 0) if (appoggio > massimo) massimo = appoggio; printf ("Massimo: %d\n", massimo); 5 6 Costante simbolica Ciclo for se i è divisibile per 2 allora sommo l intero 1

2 Esercizio numero 4 Sintassi di un linguaggio di programmazione /* Esercizio 4: chiede in input 10 interi e * somma gli interi maggiori di zero #define NUMERO_INTERI 10 int i, appoggio, somma=0; for ( i=0; i< NUMERO_INTERI; i++) if ( appoggio > 0 ) Costante simbolica Ciclo for se appoggio è maggiore di 0 allora sommo l intero 7 Sintassi di un linguaggio insieme di un regole che regolano la composizione di un programma corretto Differenza tra un programma: sintatticamente corretto: obbedisce alle regole sintattiche corretto: risolve tutte le istanze del problema per il quale è stato progettato 8 La compilazione I token del linguaggio C La compilazione è un processo automatico che converte un programma scritto in un linguaggio di programmazione in codice macchina necessità di definire le regole di sintassi del linguaggio (Backus-Naur Form o BNF) Il programma C: sequenza di caratteri Il compilatore raggruppa i caratteri del programma in token token: oggetti del vocabolario di base del linguaggio Sei tipi di token: parole chiave (keywords) identificatori costanti costanti stringa operatori simboli di interpunzione 9 10 Un esempio Un esempio /* File: somma.c * Programma di prova * 11/10/2000 main () int i, j, sum; i = 3; j = 5; sum = i + j; printf ( Somma=%d, sum); I commenti non sono token vengono sostituiti da spazio Direttiva al preprocessore Funzione: identificatore (nome) operatore (parametri) Dichiarazione parola chiave (tipo) identificatore (nome variab.) /* File: somma.c * Programma di prova * 11/10/2000 main () int i, j, sum; i = 3; j = 5; sum = i + j; printf ( Somma=%d, sum); Assegnazione identificatore (variabile) operatore (assegnazione) costante simbolo di interpunzione Chiamata di funzione identificatore (nome funz.) costante stringa identificatore (nome var.)

3 I token del C: le parole chiave I token del C: identificatori Parole riservate al linguaggio auto do goto signed unsigned break double if sizeof void case else int static volatile char enum long struct while const extern register switch continue float return typedef default for short union Composti da: lettere, cifre e il carattere _ (underscore) Definiscono nomi unici per oggetti in un programma (variabili, funzioni etc.) Devono iniziare per lettera o underscore Lunghezza degli identificatori: in ANSI C: 31 caratteri (almeno) Alcuni commenti sugli identificatori I token del C: costanti e costanti stringa È necessario usare identificatori con un significato: Ax2 = fg + (pippo*ghk); totale_lordo = totale + (iva*totale); Rappresentano valori con un tipo Costanti intere: Costanti virgola mobile: Costanti carattere: a K ; \n Costanti stringa: Ciao Mondo! E il programma scrisse \ Ciao Mondo!\ A Caratteri ASCII non estesi niente lettere òèùì etc I token del C: interpunzione e operatori Operatori:incremento (++) e decremento (--) Segni di interpunzione: ( ) ;, Operatori: caratteri a cui è associata una operazione Operatori aritmetici: + - * / % Gli operatori separano gli identificatori. Separare operatori con spazi migliora la leggibilità del programma a=k*(9.12+h)/y; a = k * ( h) / y; Servono a incrementare/decrementare di 1 una variabile. Esempio: num++ var-- Due fasi: Operazione (effettua l incremento/decremento) Valutazione per l uso nella espressione Operatore prefisso: operazione prima della valutazione Operatore postfisso: valutazione prima della operazione --num num

4 Effetti collaterali (side-effects) Priorità ed associatività degli operatori a = 12; b = 15; c = a++ + b; a = 12; b = 15; c = ++a + b; Il valore di a viene prima valutato per la operazione e poi incrementato c vale 27 Il valore di a viene prima incrementato e poi valutato per la operazione c vale 28 Regole per la precedenza nella applicazione A parità di priorità si segue la associatività (che può essere da sinistra o da destra) Operatori Associatività ( ) ++ (postfisso) -- --(postfisso) Da sinistra + - (unari) ++(prefisso) -- --(prefisso) Da destra * / % Da sinistra + - Da sinistra = += -= *= /= %= Da destra Operatori di assegnamento Operatori aritmetici di assegnamento Il simbolo = è un operatore variabile = espressione espressione può essere un altro assegnamento var = espr viene valutata con espr Quindi a = 1; b = 3; c = a + b; può essere c = (a = 1) + (b = 3); Assegnazione multipla: a = b = c = 0; Valutato con associatività a destra: a = (b = (c = 0)); Uso comune di assegnazioni e operatori: numero_studenti = numero_studenti + 10; può essere scritto più compattamente come: numero_studenti += 10; Operatori aritmetici e logici (orientati ai bit) += -= *= /= %= >>= <<= &= ^= = = Operatori per incremento: differenze Alcuni esempi di espressioni Per incrementare una variabile a si può in maniera equivalente usare: i++; i = i + 1; i += 1; Mentre le seguenti due istruzioni sono diverse: i + 1; non ha alcun effetto su i, è una espressione che viene valutata e basta i++; in questo caso la espressione viene valutata ma il comportamento dell operatore modifica i int a = 1, b = 2, c = 3, d = 4; a * b + c / d (a * b) + (c / d) Risultato: 2 Operatori Operatori Associatività Associatività (()) (postfisso) (postfisso)---(postfisso) Da Da sinistra sinistra (prefisso) -- --(prefisso) Da Da destra destra ** // % Da Da sinistra sinistra + -- Da Da sinistra sinistra = += += -= -= *= *= /= /= %= %= Da Da destra destra Operatori * e / con la stessa priorità, associatività da sinistra poi operatore +. Attenzione! Conversione di tipo automatica in intero

5 Alcuni esempi di espressioni Alcuni esempi di espressioni int a = 1, b = 2, c = 3, d = 4; a * b * c + 1 ( ( a * b) * c) + 1 Operatori Operatori Associatività Associatività (()) (postfisso) (postfisso)---(postfisso) Da Da sinistra sinistra (prefisso) -- --(prefisso) Da Da destra destra ** // % Da Da sinistra sinistra + -- Da Da sinistra sinistra = += += -= -= *= *= /= /= %= %= Da Da destra destra Operatori *, associatività da sinistra poi operatore +. Risultato: 7 int a = 1, b = 2, c = 3, d = 4; ++ a - b * c -- (++ a) - (b * (c --)) Operatori Operatori Associatività Associatività (()) (postfisso) (postfisso)---(postfisso) Da Da sinistra sinistra (prefisso) -- --(prefisso) Da Da destra destra ** // % Da Da sinistra sinistra + -- Da Da sinistra sinistra = += += -= -= *= *= /= /= %= %= Da Da destra destra Operatore -- postfisso, operatore ++ prefisso, operatore * e - Risultato: -4 e c vale 2 ed a vale 2 Attenzione! L operatore postfisso effettua la operazione dopo la valutazione Alcuni esempi di espressioni Conversioni di tipo int a = 1, b = 2, c = 3, d = 4, e =5 ; 30 / -++ e % c 30 / (- (++ e)) - (+ 29) % c (30 / (- (++ e))) - ((+ 29) % c) Operatori Operatori Associatività Associatività (()) (postfisso) (postfisso)---(postfisso) Da Da sinistra sinistra (prefisso) -- --(prefisso) Da Da destra destra ** // % Da Da sinistra sinistra + -- Da Da sinistra sinistra = += += -= -= *= *= /= /= %= %= Da Da destra destra Operatore ++ prefisso, operatori - e + unario (assoc. da destra) Operatori / e % (assoc. da sinistra) Operatore - Risultato: Ogni espressione aritmetica ha: un valore un tipo Ad esempio x+y se x e y sono int, allora anche x+y è int se x è float e y è int, allora x+y è float Regole di conversione aritmetica casting implicito (operato dal compilatore) casting esplicito (richiesto dal programmatore) 28 Casting implicito (operato dal compilatore)) Casting esplicito se uno dei due operandi è long double allora anche l altro viene convertito altrimenti, se uno dei due operandi è double allora anche l altro viene convertito altrimenti, se uno dei due operandi è float allora anche l altro viene convertito altrimenti se uno dei due è unsigned long allora anche l altro viene convertito altrimenti se uno è long e l altro è unsigned si converte a quello di maggiore capacità altrimenti, se uno dei due operandi è long, unsigned o int allora anche l altro viene Si può forzare il compilatore ad utilizzare un tipo diverso per espressioni Esempi: int i; a = (double) i; j = (long) ( A + 10);... x = (float) ( (int) y + 1);... (double) (x = 65); convertito

6 Alcuni particolarità: Un idioma: il ciclo while Il casting nelle assegnazioni converte se necessario il tipo del rvalue al tipo lvalue int i; float d = 3.14; i = d; /* assegna 3! int i = 3; float d; d = i;/* assegna 3.0 Necessità l idioma ripeti-n-volte permette di effettuare un numero di iterazioni fissato da una costante o una variabile nel programma da un intero scelto dall utente mentre a volte: il numero di iterazioni non è fissato ma dipende da condizioni logiche (vero/falso) l utente può non volere calcolare esplicitamente tale numero di iterazioni Un esempio: il calcolo della somma Il ciclo while Supponiamo che si deve calcolare la somma di una lunga lista di interi L utente gradirebbe senza dubbio:: inserire gli interi uno alla volta quando ha finito, segnalare al programma che vuole l output Soluzione: l idioma sentinella ed il ciclo while. Il ciclo while si compone di una condizione logica un corpo Il corpo viene eseguito ripetutamente mentre la condizione risulta vera while ( i > 0 ) condizione logica blocco istruzioni Le condizioni logiche Un idioma: la sentinella Risultato di una operazione con operatori relazionali. Ad esempio: while (i > 0) while (i!= 10) while (num == 187) In C, le condizioni logiche vengono espresse da interi: un valore uguale a 0 risulta FALSE qualsiasi valore diverso da 0 risulta TRUE (convenzionalmente fissato a 1) 35 Condizione per l uscita scelta dall utente Il ciclo while deve ciclare all infinito: while (TRUE)... In caso di uscita dal ciclo si usa la istruzione break: if (...) break; 36 6

7 La somma con la sentinella e while Un errore tipico con il while /* sentinella.c: somma con sentinella #define TRUE 1 int i=0, appoggio, somma=0; Definizione di TRUE come costante > 0 Il ciclo infinito. Uso del contatore con incremento (prefisso!) La sentinella se appoggio è 0 allora esci dal ciclo se continua lo somma while (TRUE) printf("inserire intero n.%d:", ++i); while (appoggio = 1) if ( appoggio == 0 ) break; printf( Digita intero diverso da 1:"); /* errore.c: inserisce un numero diverso da 1 e poi fa qualche cosa.. int appoggio=1; Dichiarazione di appoggio L idea: ciclare fino a quando l utente non digita un intero diverso da 1. Il programma invece cicla all infinito! Dove è l errore? Errori tipici: Cosa fa questo programma? Variabili non dichiarate/inizializzate Dimenticare il ; a fine istruzione Non usare l indirizzo di una variabile (il &) nella scanf Confondere assegnazione con test di uguaglianza nei cicli 39 /* errore.c: inserisce un numero diverso da 0 e poi fa qualche cosa.. int appoggio=0; while (appoggio = 0) printf( Digita intero diverso da 0:"); Cosa fa questo programma? Relazione tra ciclo for e while #define TRUE 1 int i=0, appoggio, somma=0; while (TRUE) printf("inserire intero n.%d:", ++i); if ( appoggio = 0 ) break; Il ciclo for: for (inizializzazione ; test ; step) è equivalente al while: inizializzazione; while (test) step;

8 La somma con la sentinella e for Esercizio 1 /* sentinella2.c: sentinella con il for #define TRUE 1 int i=0, appoggio, somma=0; Cambia solamente il ciclo Sono vuote le condizioni di inizializzazione e lo step Il break funziona anche con il ciclo for Commento: il for non serve solamente per $ a.out for ( ; TRUE ; ) Inserire un intero: 5 * printf("inserire intero n.%d:", ++i); ** *** if ( appoggio == 0 ) break; **** ***** $ cicli numerici Scrivere un programma C che prende in input un intero lung e stampa a schermo righe di asterischi di lunghezza crescente da 1 a lung. Esercizio 2 Esercizio 3 Scrivere un programma C che prende in input un intero rig e stampa a schermo rig righe di asterischi (di lunghezza crescente) centrate sul primo: $ a.out Inserire un intero: 5 * *** ***** ******* ********* $ Scrivere un programma C che prende in input due interi b e a e stampa a schermo un quadrato di asterischi con base b ed altezza a: $ a.out Inserire base: 4 Inserire altezza: 3 **** * * **** $

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

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

Laboratorio di Informatica I

Laboratorio di Informatica I Struttura della lezione Lezione 3: Istruzioni ed operatori booleani. Vittorio Scarano Corso di Laurea in Informatica Università di Salerno Soluzioni agli esercizi Istruzioni (statement) semplici e di controllo

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

La sintassi del C APPENDICE H

La sintassi del C APPENDICE H APPENDICE H La sintassi del C Nella notazione della sintassi utilizzata, le categorie sintattiche (non terminali) sono state indicate da uno stile tipografico in corsivo, mentre le parole letterali e i

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

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

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

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

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

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

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

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

Il C nel C++ Struttura di un linguaggio. Elementi lessicali. Spazi. Livello lessicale: Livello sintattico: Livello semantico:

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

Dettagli

Struttura di un linguaggio

Struttura di un linguaggio 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

Variabili e Funzioni. Informatica 1 / 19

Variabili e Funzioni. Informatica 1 / 19 Variabili e Funzioni Informatica 1 / 19 Programmi C e Un programma C e composto da funzioni e variabili Variabile: memorizza valori appartenenti ad un insieme di definizione (dipendente dal tipo) Funzione:

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

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

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

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

PROGRAMMA = ALGORITMO

PROGRAMMA = ALGORITMO Corso di Laurea Scienze Prof. San. Tec., Area Tecnico-Assistenziale SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI Anno Accademico 2005-2006 Prof. Fausto Passariello Corso Integrato Metodologia della Ricerca

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

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

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

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

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

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

Un esecutore di un linguaggio simbolico e costituito dalla coppia Compilatore, processore (o Interprete, processore)

Un esecutore di un linguaggio simbolico e costituito dalla coppia Compilatore, processore (o Interprete, processore) Un esecutore di un linguaggio simbolico e costituito dalla coppia Compilatore, processore (o Interprete, processore) Macchina astratta: un linguaggio di programmazione trasforma un calcolatore in una macchina

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

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

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

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

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

Lezione 9: Puntatori a funzioni. Tipi enumerativi e orientati ai bit

Lezione 9: Puntatori a funzioni. Tipi enumerativi e orientati ai bit Lezione 9: Puntatori a funzioni. Tipi enumerativi e orientati ai bit Vittorio Scarano Laboratorio di Informatica I Corso di Laurea in Informatica Università degli Studi di Salerno Struttura della lezione

Dettagli

Laboratorio di programmazione

Laboratorio di programmazione Laboratorio di programmazione Lezione II Tatiana Zolo zolo@cs.unipr.it 1 IL PROGRAMMA C++ Istruzioni (espressioni terminate da ; ) istruzioni di dichiarazione (es. int x = 0;); istruzioni di assegnamento

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

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 Materiale disponibile sul sito http://www.fisica.unile.it/~martello/corsi/dottorato/index.html

Dettagli

IL LINGUAGGIO JAVA. Introduzione alla sintassi di Java La sintassi formalizza le regole sintattiche per scrivere frasi ben formate

IL LINGUAGGIO JAVA. Introduzione alla sintassi di Java La sintassi formalizza le regole sintattiche per scrivere frasi ben formate Fondamenti di Informatica IL LINGUAGGIO JAVA Sintassi, Semantica, Input, Tipi Elementari e Istruzione Condizionale 1 Introduzione alla sintassi di Java La sintassi formalizza le regole sintattiche per

Dettagli

Espressioni ed operatori in C

Espressioni ed operatori in C Espressioni ed operatori in C Espressioni Il C è un linguaggio basato su espressioni Una espressione è una notazione che denota un valore mediante un processo di valutazione Una espressione può essere

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

Espressioni ed operatori in C

Espressioni ed operatori in C Espressioni ed operatori in C Espressioni Il C è un linguaggio basato su espressioni Una espressione è una notazione che denota un valore mediante un processo di valutazione Una espressione può essere

Dettagli

Fondamenti di C++ Input/Output di base

Fondamenti di C++ Input/Output di base Università della Calabria Corso di Laurea in Ingegneria Elettronica Programmazione Orientata agli Oggetti A.A. 2006/2007 Fondamenti di C++ Paolo Trunfio * * DEIS, Università della Calabria http://si.deis.unical.it/~trunfio

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

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

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

Flusso logico di un programma

Flusso logico di un programma 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

Dettagli

SULL USO DEI CARATTERI. char x; si legge con ( %c,&x) e si stampa con ( %c,x) ma anche con ( %d,x) DUE ESEMPI

SULL USO DEI CARATTERI. char x; si legge con ( %c,&x) e si stampa con ( %c,x) ma anche con ( %d,x) DUE ESEMPI SULL USO DEI CARATTERI Ricordiamo che: int x; si legge con ( %d,&x) e si stampa con ( %d,x) float x; si legge con ( %f,&x) e si stampa con ( %f,x) double x;si legge con ( %lf,&x) e si stampa con ( %f,x)

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

Informatica 1 Tipi e dichiarazioni in C++ C++ - Tipi e dichiarazioni 1

Informatica 1 Tipi e dichiarazioni in C++ C++ - Tipi e dichiarazioni 1 Informatica 1 Tipi e dichiarazioni in C++ C++ - Tipi e dichiarazioni 1 Cosa è il C++ E un linguaggio di programmazione derivato dal C Può essere usato per modificare il SO Unix e i suoi derivati (Linux)

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

Un esempio per iniziare. Il controllo del programma in C. Altri cenni su printf() Esercizi (printf) printf( 8!=%d, fatt);

Un esempio per iniziare. Il controllo del programma in C. Altri cenni su printf() Esercizi (printf) printf( 8!=%d, fatt); Un esempio per iniziare Il controllo del programma in C DD Cap.3 pp.91-130 /* calcolo di 8!*/ #include #define C 8 int main() int i=1; int fatt=1; while (i

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

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

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

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

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

I cicli. Iterazioni Calcolo della media Istruzioni break e continue

I cicli. Iterazioni Calcolo della media Istruzioni break e continue I cicli Iterazioni Calcolo della media Istruzioni break e continue Ciclo while p Vero A while() ; Falso Esegue una istruzione mentre una condizione è verificata Programmazione

Dettagli

Tipi di dati fondamentali. Tipi di dati fondamentali. Utilità dei tipi di dati nelle dichiarazioni. Il tipo di dati char. Codice ASCII.

Tipi di dati fondamentali. Tipi di dati fondamentali. Utilità dei tipi di dati nelle dichiarazioni. Il tipo di dati char. Codice ASCII. Tipi di dati fondamentali Tipi di dati fondamentali Linguaggi di Programmazione I Ferdinando Cicalese caratteri: char signed char unsigned char interi short int long interi unsigned short unsigned unsigned

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

Informatica B. Sezione D. Scuola di Ingegneria Industriale Laurea in Ingegneria Energetica Laurea in Ingegneria Meccanica

Informatica B. Sezione D. Scuola di Ingegneria Industriale Laurea in Ingegneria Energetica Laurea in Ingegneria Meccanica Scuola di Ingegneria Industriale Laurea in Ingegneria Energetica Laurea in Ingegneria Meccanica Dipartimento di Elettronica, Informazione e Bioingegneria Informatica B Sezione D Franchi Alessio Mauro,

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

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

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

IL LINGUAGGIO C Un elaboratore è un manipolatore di simboli (segni) L'architettura fisica di ogni elaboratore è intrinsecamente capace

IL LINGUAGGIO C Un elaboratore è un manipolatore di simboli (segni) L'architettura fisica di ogni elaboratore è intrinsecamente capace IL LINGUAGGIO C Un elaboratore è un manipolatore di simboli (segni) L'architettura fisica di ogni elaboratore è intrinsecamente capace di trattare vari domini di dati, detti tipi primitivi dominio dei

Dettagli

Strutture di Controllo Iterative: Istruzione FOR

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

Dettagli

Lezione 8: Stringhe ed array multidimensionali

Lezione 8: Stringhe ed array multidimensionali Lezione 8: Stringhe ed array multidimensionali Vittorio Scarano Corso di Laurea in Informatica Università degli Studi di Salerno Struttura della lezione AVVISO: la lezione di laboratorio di 28/5 non si

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

Laboratorio di informatica Ingegneria meccanica

Laboratorio di informatica Ingegneria meccanica Rappresentazione ed interpretazione Laboratorio di informatica Ingegneria meccanica Insieme dei valori da rappresentare interpretazione rappresentazione Insieme delle sequenze di K bit Lezione 2 8 ottobre

Dettagli

Parametri passati per indirizzo. Puntatori Vogliamo modificare la parte del codice di bubble che realizza lo scambio dei valori:

Parametri passati per indirizzo. Puntatori Vogliamo modificare la parte del codice di bubble che realizza lo scambio dei valori: Parametri passati per indirizzo. Puntatori Vogliamo modificare la parte del codice di bubble che realizza lo scambio dei valori: tmp = a[j-1]; a[j-1] = a[j]; a[j] = tmp; sostituiamo questa riga con un

Dettagli

PREFAZIONE... IX Lo scopo di questo libro... ix La metodologia di insegnamento... ix Panoramica sul libro... xiii

PREFAZIONE... IX Lo scopo di questo libro... ix La metodologia di insegnamento... ix Panoramica sul libro... xiii Sommario PREFAZIONE... IX Lo scopo di questo libro... ix La metodologia di insegnamento... ix Panoramica sul libro... xiii CAPITOLO 1: INTRODUZIONE AI COMPUTER, A INTERNET E AL WEB... 1 1.1 Introduzione...

Dettagli

IL LINGUAGGIO C TIPI DI DATO

IL LINGUAGGIO C TIPI DI DATO IL LINGUAGGIO C Un elaboratore è un manipolatore di simboli (segni) L'architettura fisica di ogni elaboratore è intrinsecamente capace di trattare vari domini di dati, detti tipi primitivi dominio dei

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

Le basi del linguaggio Java

Le basi del linguaggio Java Le basi del linguaggio Java Compilazione e interpretazione Quando si compila il codice sorgente scritto in Java, il compilatore genera il codice compilato, chiamato bytecode. È un codice generato per una

Dettagli

Laboratorio di Informatica I

Laboratorio di Informatica I Struttura della lezione Lezione 6: Array e puntatori Vittorio Scarano Laboratorio di Informatica I Corso di Laurea in Informatica Università degli Studi di Salerno Una funzione per i numeri di Fibonacci

Dettagli

Gli Operatori. Linguaggio C. Gli Operatori. Esempi sull uso dell Operatore di Assegnamento. L Operatore di Assegnamento

Gli Operatori. Linguaggio C. Gli Operatori. Esempi sull uso dell Operatore di Assegnamento. L Operatore di Assegnamento Linguaggio C Gli Operatori Gli Operatori Gli operatori sono simboli (sia singoli caratteri che loro combinazioni) specificano come devono essere manipolati gli operandi dell espressione Operatori aritmetici

Dettagli

Espressioni. Espressioni. Valutazione di un espressione. Espressioni semplici

Espressioni. Espressioni. Valutazione di un espressione. Espressioni semplici Espressioni Una espressione E del linguaggio C può essere definita formalmente come segue (definizione induttiva): E è una espressione semplice. Espressioni Sia Op n un operatore del linguaggio di arità

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

ELEMENTI DI INFORMATICA L-B. Ing. Claudia Chiusoli

ELEMENTI DI INFORMATICA L-B. Ing. Claudia Chiusoli ELEMENTI DI INFORMATICA L-B Ing. Claudia Chiusoli Materiale Lucidi delle lezioni Date degli appelli Testi di esami precedenti Informazioni e contatti http://www.lia.deis.unibo.it/courses/ Programma del

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

Lezione 6: Array e puntatori

Lezione 6: Array e puntatori Lezione 6: Array e puntatori Vittorio Scarano Laboratorio di Informatica I Corso di Laurea in Informatica Università degli Studi di Salerno Struttura della lezione Una funzione per i numeri di Fibonacci

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

Linguaggio C Operatori, Espressioni e Conversioni di tipo

Linguaggio C Operatori, Espressioni e Conversioni di tipo Linguaggio C Operatori, Espressioni e Conversioni di tipo Università degli Studi di Brescia Prof. Massimiliano Giacomin Elementi di Informatica e Programmazione Università di Brescia 1 Expression Statement

Dettagli

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica Fondamenti di Informatica INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA Fondamenti di Informatica - D. Talia - UNICAL 1 Fondamenti di Informatica - Programma Un programma è una formulazione

Dettagli

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Fondamenti di Informatica - Programma

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Fondamenti di Informatica - Programma Fondamenti di Informatica INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA Fondamenti di Informatica - D. Talia - UNICAL 1 Fondamenti di Informatica - Programma Un programma è una formulazione

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

ISTRUZIONI ISTRUZIONI SEMPLICI

ISTRUZIONI ISTRUZIONI SEMPLICI ISTRUZIONI istruzioni azioni modifica permanente dello stato interno strutture di controllo ::= ::= ::=

Dettagli

Capitolo 2 Introduzione alla programmazione in C

Capitolo 2 Introduzione alla programmazione in C Capitolo 2 Introduzione alla programmazione in C Introduzione Un semplice programma C: Stampa di una linea di testo Un altro semplice programma C: Sommare due interi Concetti sulla Memoria Aritmetica in

Dettagli

Un elaboratore è un manipolatore di simboli (segni) intrinsecamente capace di trattare vari. caratteri char caratteri ASCII unsigned char

Un elaboratore è un manipolatore di simboli (segni) intrinsecamente capace di trattare vari. caratteri char caratteri ASCII unsigned char IL LINGUAGGIO C Un elaboratore è un manipolatore di simboli (segni) L'architettura tt fisica i di ogni elaboratore è intrinsecamente capace di trattare vari domini i di dati, detti tipi i primitivi iti

Dettagli

Informatica A+B Politecnico di Milano A.A Elenco delle parole chiave definite in ANSI C

Informatica A+B Politecnico di Milano A.A Elenco delle parole chiave definite in ANSI C Turbo C Elenco delle parole chiave definite in ANSI C auto const double float int short struct unsigned break continue else for long signed switch void case default enum goto register sizeof typedef volatile

Dettagli

Costrutti di Programmazione Strutturata. Informatica 1 / 22

Costrutti di Programmazione Strutturata. Informatica 1 / 22 Costrutti di Programmazione Strutturata Informatica 1 / 22 Costrutti di Base Ricordi? Un algoritmo è detto strutturato se usa solo Sequenze di istruzioni Selezioni (se predicato allora fai istruzioni altrimenti

Dettagli

Laboratorio di Informatica I

Laboratorio di Informatica I Struttura della lezione Lezione 5: Funzioni e programmazione modulare Vittorio Scarano Corso di Laurea in Informatica Università degli Studi di Salerno Esercizi (Fibonacci e numeri primi) Funzioni Regole

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

Tipo carattere. Campo di variabilità. Intervallo finito. Tipo. Dimensione (byte) char

Tipo carattere. Campo di variabilità. Intervallo finito. Tipo. Dimensione (byte) char Tipo carattere Finora abbiamo lavorato con valori numerici. I numeri costituiscono molta parte del lavoro dei computer, ma non tutta. I computer sono macchine per il trattamento dell informazione e l informazione

Dettagli