Corso di Informatica B - Sezione D

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Corso di Informatica B - Sezione D"

Transcript

1 Facoltà di Ingegneria Industriale Laurea in Ingegneria Energetica, Meccanica e dei Trasporti Corso di Informatica B - Sezione D Esercitazioni Linguaggio C Politecnico di Milano - DEI 1

2 Facoltà di Ingegneria Industriale Laurea in Ingegneria Energetica, Meccanica e dei Trasporti Linguaggio Iterazioni Array Matrici Controlli input avanzati Politecnico di Milano - DEI 2

3 Esercizio 1 Scrivere un programma che stampi i primi N numeri primi con N intero inserito da utente. Obiettivi iterazioni istruzioni di controllo Politecnico di Milano - DEI 3

4 Esercizio 1 - Soluzione Numero primo: un numero primo è un numero naturale maggiore di 1 che sia divisibile solamente per 1 e per se stesso. Nel progetto della soluzione occorre: richiedere l inserimento di N e verificare che sia maggiore o uguale ad 1; verificare quali tra i numeri k da 2 ad N (...1 è primo per definizione...) sono primi; Un numero k sarà primo se per tutti i divisori num = [1...k-1], il resto della divisione k/num è non nullo. Definisco le variabili necessarie: int N, j, k, primo; int num = 1; char scelta; Politecnico di Milano - DEI 4

5 Esercizio 1 - Soluzione Chiedo in input N controllando che ricada nei vincoli specificati: printf("fino a quanto vuoi calcolare i numeri primi? "); do scanf("%d", &N); while(n < 1); Per controllare quale tra gli interi da 1 a N è un numero primo occorre utilizzare due cicli for annidati. In pseudocodice le operazioni da svolgere saranno: for (tutti gli interi da 1 a N) for (tutti i divisori da 2 a num) if ((num % k) == 0)il num corrente NON è primo if (num è primo)stampo num a video Politecnico di Milano - DEI 5

6 Esercizio 1 - Soluzione Traducendo lo pseudocodice in codice: for (num = 1; num <= N; num++) primo = 1; for (k = 2; k < num; k++) if ((num % k) == 0) primo = 0; break; if (primo) printf(" %3d", num); Politecnico di Milano - DEI 6

7 Esercizio 1 - Soluzione Chiedo all utente se vuole ripetere l operazione controllando che la risposta immessa sia unicamente s o n: printf("nuovo calcolo? s/n"); do scanf("%c", &scelta); while(scelta!= 's' && scelta!= 'n'); Se la scelta ricade sul si, rilancio la funzione main() per ripetere tutta la procedura: if (scelta == 's') main(); return 0; Politecnico di Milano - DEI 7

8 Esercizio 2 Inserire e validare una data in formato DD/MM/YYYY Obiettivi do while scanf più complesse condizioni complesse if ed if else Politecnico di Milano - DEI 8

9 Esercizio 2 - Soluzione Affinché una data nel formato DD/MM/YYYY sia corretta, è necessario controllare che: YYYY > 0; la parte DD sia sempre >= 1 e <=31; se il il mese è febbraio, DD <= 28; se il il mese è febbraio e l anno è bisestile DD <= 29; se i mesi sono Aprile, Giugno, Settembre, Novembre: DD <= 30; Vediamo come comporre il corpo della funzione principale per implementare questa soluzione. Dichiaro la variabile che conterrà i mesi dell anno. Per i mesi dell anno scelgo una variabile di tipo enum. L enumerazione risulta molto utile quando si ha una lista finita di elementi a cui si vuole associare un numero intero per identificarli: enum GEN = 1, FEB, MAR, APR, MAG, GIU, LUG, AGO, SET, OTT, NOV, DIC; Per ulteriori informazioni su enum consulta: Politecnico di Milano - DEI 9

10 Esercizio 2 - Soluzione Dichiaro le altre variabili: int g, m, a; // Giorno, mese, anno. int datacorretta; int isbisestile; Inizializzo datacorretta al valore corretto 1, il suo valore verrà cambiato se si incontra un errore, e chiedo in input la data. datacorretta = 1; printf("inserisci la data in formato DD/MM/YYYY: "); scanf("\n%d/%d/%d", &g, &m, &a); Si noti il formato della scanf. Tra i tre placeholder %d sono stati inseriti i separatori / (limitatori di record). In questo modo possiamo far leggere alla funzione contemporaneamente più valori memorizzandoli automaticamente nelle variabili g,m,a. iniziando da g, ogni volta che la scanf incontrerà il simbolo / passerà alla memorizzazione nella variabile successiva. Il separatore sarebbe potuto essere anche un carattere diverso come - o *. Politecnico di Milano - DEI 10

11 Esercizio 2 - Soluzione Cosa succede se utilizziamo un limitatore di record diverso da quello specificato nella scanf? Inizio il controllo della data. Controllo generale su giorno, mese, anno: if ( g < 1 g > 31 m < 1 m > 12 a < 0) datacorretta = 0; continue; Politecnico di Milano - DEI 11

12 Esercizio 2 - Soluzione E' anno bisestile? se non bisestile, i giorni non osso essere più di 28 altrimenti non possono essere più di 29 isbisestile = (a%4 == 0 && a%100!= 0) a%400 == 0 ; if(m==feb&&((isbisestile&&g>29) (!isbisestile &&g>28))) // datacorretta = 0; Controlliamo i mesi con 30 giorni: else if((m==apr m==giu m==set m==nov) && g>30 ) datacorretta = 0; Politecnico di Milano - DEI 12

13 Esercizio 2 - Soluzione Se datacorretta ha mantenuto il valore 0, vuol dire che non è nel formato giusto. if (datacorretta == 0) printf("la data immessa non e valida. Riprovare."); Tutto il controllo della data può essere inserito all interno di un ciclo do...while per fare in modo che,a fronte di una data non corretta, il programma non termini ma ne chieda un altra finché la forma DD/MM/YYYY non viene rispettata. do...controllo data... while ( datacorretta == 0 ); printf("la data esiste!"); return 0; Politecnico di Milano - DEI 13

14 Esercizio 3 Chiedere nome, cognome ed età dell'utente e scrivere frase di benvenuto personalizzata Obiettivi primi passi con array Politecnico di Milano - DEI 14

15 Esercizio 3 - Soluzione La soluzione dell esercizio è strutturata in pochi semplici passi: chiediamo in ingresso: nome, cognome ed età separatamente; leggiamo i dati e li salviamo in apposite variabili; utilizzando le variabili di salvataggio compongo la stringa di benvenuto. Nell implementazione occorre prestare attenzione al tipo di variabile in cui memorizzare nome e cognome. In C abbiamo la variabile char che ci permette di memorizzare un solo carattere. Per memorizzare una stringa occorre creare una variabile che sia un array di char. Fatta questa premessa, possiamo definire le variabili utili alla souzione: int eta; char nome[max], cognome[max]; dove la dimensione MAX è una costante definita tramite: #define MAX 10 Politecnico di Milano - DEI 15

16 Esercizio 3 - Soluzione Chiedo in input nome, cognome ed età: printf("inserire nome: "); scanf("%s", nome); printf("inserire cognome: "); scanf("%s", cognome); // Cosa succede con la scanf di stringhe? printf("inserire eta : "); scanf("%d", &eta); Si noti che nella scanf non serve la & davanti al nome della variabile. Nel caso di array, il nome della variabili si riferisce già ad un indirizzo di memoria: l indirizzo in cui è memorizzato il primo elemento. Politecnico di Milano - DEI 16

17 Esercizio 3 - Soluzione Scrivo la stringa di benvenuto e chiudo la funzione principale. printf("ciao %s %s! Hai %d anni.", cognome, nome, eta); return 0; Politecnico di Milano - DEI 17

18 Esercizio 4 Chiedere all utente di aggiungere o cercare una persona in un registro di cognomi. L utente può anche visualizzare l intero contenuto del registro Non devono esserci duplicati. Obiettivi C è tutto quello visto finora Comparazione tra stringhe Navigazione in un array Politecnico di Milano - DEI 18

19 Esercizio 4 - Soluzione Progettiamo la soluzione in modo che l utente abbia a disposizione un menu di comandi nel momento in cui avvia il programma. Il menu sarà composto da: inserimento [i] ricerca [r] visualizzazione [v] quit [q] A seconda della scelta verrà eseguita la porzione di codice corrispondente. In aggiunta sarà bene implementare anche un controllo sulla validità della scelta fatta dall utente per rendere il codice più robusto. Tutta la procedura deve ripetersi finchè l utente non sceglie di uscire dal programma con il comando quit. Politecnico di Milano - DEI 19

20 Esercizio 4 - Soluzione La soluzione ha una struttura articolata. In questi casi è comodo scriverne la struttura in forma di pseudocodice: do do Visualizzazione menu e inserimento comando... while ( cmd!= 'c' && cmd!= 'q' && cmd!= 'i' && cmd!= 'v'); if (cmd == 'c') Cerca... else if (cmd == 'v') Visualizza... else if (cmd == 'i') Inserisci... while ( cmd!= 'q' ); return 0; Politecnico di Milano - DEI 20

21 Esercizio 4 - Soluzione Dichiaro le variabili necessarie e analizzo le porzioni dello pseudocodice. char registro[max_reg_size][max_string_size]; char cognome[max_string_size]; char cmd; int elementiregistro = 0; int i; con MAX_REG_SIZE e MAX_STRING_SIZE definite tramite: #define MAX_STRING_SIZE 30 #define MAX_REG_SIZE 10 Politecnico di Milano - DEI 21

22 Esercizio 4 - Soluzione - Visualizzazione menu e inserimento comando - Finché non viene inserito un comando valido, previsto nel menu, continuo a chiedere all utente di fare una scelta. do printf("scegliere l'operazione da eseguire:[i][c][v][q]"); scanf("%c", &cmd); while ( cmd!='c' && cmd!='q' && cmd!='i' && cmd!='v' ); Politecnico di Milano - DEI 22

23 Esercizio 4 - Soluzione - Cerca - Per eseguire la ricerca nel registro occorre assicurarci preliminarmente che la rubrica abbia degli elementi memorizzati al suo interno. Se il registro non è vuoto, acquisisco il nome ed effettuo la ricerca. if (cmd == 'c') if ( elementiregistro!= 0 ) printf("inserire cognome da cercare: "); scanf("%s", cognome); getchar(); for ( i=0; i < elementiregistro; i++) if (strcmp(&registro[i][0], cognome) == 0 ) printf("trovato!"); break; Politecnico di Milano - DEI 23

24 Esercizio 4 - Soluzione Il metodo migliore per confrontare stringhe tra loro è utilizzare la funzione strcmp, contenuta nella libreria <string.h>. strcmp restituisce 0 se le due stringhe sono uguali, 1 altrimenti. Per ulteriori informazioni su #strcmp consulta: Se l indice i raggiunge la fine della rubrica, il nome cercato non é presente. if (cmd == 'c') if ( elementiregistro!= 0 )... if ( i == elementiregistro ) printf("nessun riscontro."); else printf("registro vuoto."); Politecnico di Milano - DEI 24

25 Esercizio 4 - Soluzione - Visualizza - Ciclo sugli elementi della rubrica e li visualizzo. NOTA: il ciclo di visualizzazione va impostato sugli elementi realmente presenti nella rubrica, non sulla sua dimensione massima MAX_REG_SIZE. if (cmd == 'c')... else if (cmd == 'v') // Non ciclo su MAX_STRING_SIZE o MAX_REG_SIZE // Ma solo sul numero di elementi realmente inseriti for ( i=0; i < elementiregistro; i++) printf("%d) %s", i+1, &registro[i][0]); Politecnico di Milano - DEI 25

26 Esercizio 4 - Soluzione - Inserisci - Il caso di inserimento è articolato in due parti: else if (cmd == 'i') printf("inserire cognome da aggiungere: "); scanf("%s", cognome); getchar(); i = 0; Verifico che il registro non sia vuoto. In tal caso controllo se il nome inserito è già presente in rubrica. Nel caso in cui non sia presente, procedo all inserimento. Politecnico di Milano - DEI 26

27 Esercizio 4 - Soluzione - Inserisci - Controllo se il cognome inserito è già presente in rubrica if ( elementiregistro!= 0 ) //Se la rubrica non è vuota for ( i=0; i < elementiregistro; i++) if (strcmp(&registro[i][0], cognome) == 0 ) printf("nome gia presente."); break; Utilizzo l indice i per scorrere tutti gli elementi della rubrica. Confronto ogni elemento registro[i][0] con il cognome inserito cognome. Se la funzione strcmp() mi restituisce 0 vuol dire che registro[i][0] e cognome sono uguali quindi, un cognome uguale è già presente in rubrica. Politecnico di Milano - DEI 27

28 Esercizio 4 - Soluzione - Inserisci - Nel caso in cui non sia presente, procedo all inserimento. if ( i == elementiregistro ) //Sono alla fine del registro i = 0; salvo il cognome all interno della rubrica facendo attenzione a non superare la dimensione massima memorizzabile MAX_STRING_SIZE while ( cognome[i]!= 0 && i < MAX_STRING_SIZE - 1 ) registro[elementiregistro][i] = cognome[i]; i++; Termino la stringa con 0 registro[elementiregistro][i] = 0; Incremento il numero di elementi elementiregistro++; printf("aggiunto %s.", cognome); Politecnico di Milano - DEI 28

29 Esercizio 5 Far inserire all utente due matrici. Chiedere poi che operazione svolgere tra: somma, differenza, e moltiplicazione scalare. Calcolare anche il massimo di ogni matrice e la media aritmetica dei suoi valori. Obiettivi Creazione, riempimento e visualizzazione di una matrice Operazioni sulle matrici: - Somma, differenza, prodotto, min, max, media Navigazione all interno di una matrice Politecnico di Milano - DEI 29

30 Esercizio 5 - Soluzione Articoliamo il progetto della soluzione seguendo questa struttura: Inserimento dimensioni Popolazione Richiesta ed esecuzione del tipo di operazione da effettuare Visualizzazione del risultato #define MAX 20 #define CELL_WIDTH 5 Dichiarazione ed inizializzazione delle variabili necessarie: int rows, cols, i, j; Matrici A, B e matrice dei risultati: int mtrxa[max][max], mtrxb[max][max], res[max][max]; Matrice contenente i max e i min di A e B: int mtrxmaxmin[2][2] = 0, 0, 0, 0 ; MaxA, MinA, MaxB, MinB Matrice contenente la media per le due matrici float mtrxmedia[2] = 0.0, 0.0 ; Carattere che contiene l'operazione richiesta char op; Politecnico di Milano - DEI 30

31 Esercizio 5 - Soluzione Valore per verificare se il comando era ok. int isbuilt = 1; Inserimento dimensioni matrici Ognuna delle due dimensioni della matrice non può superare MAX. In questo caso un controllo è fondamentale! do printf("il numero di righe delle matrici: "); scanf("%d", &rows); while(rows > MAX); // Se rows > MAX, rifaccio la domanda. do printf("il numero di colonne delle matrici: "); scanf("%d", &cols); while(cols > MAX); // Se cols > MAX, rifaccio la domanda. Politecnico di Milano - DEI 31

32 Esercizio 5 - Soluzione Valore per verificare se il comando era ok. int isbuilt = 1; - Popolazione matrice 1 - Nella popolazione delle matrici si lavora sugli indici delle celle. indice colonne indice righe N M Gli indici che identificano gli elementi all interno di array e matrici iniziano sempre da zero! Politecnico di Milano - DEI 32

33 Esercizio 5 - Soluzione - Popolazione matrice 1 - for( i = 0; i < rows; i++) for(j = 0; j < cols; j++) printf("1 [%d][%d] = ", i+1, j+1); scanf("%d", &mtrxa[i][j]); Memorizzo il valore inserito come massimo se: - è il primo valore che inserisce l'utente (i == 0 && j == 0) - o se il valore inserito è maggiore del massimo: mtrxmaxmin[0][0] = mtrxa[i][j]; if(mtrxa[i][j] > mtrxmaxmin[0][0] (i == 0 && j == 0)) mtrxmaxmin[0][0] = mtrxa[i][j]; Politecnico di Milano - DEI 33

34 Esercizio 5 - Soluzione - Popolazione matrice 1 - Come sopra ma col minimo if(mtrxa[i][j] < mtrxmaxmin[0][1] ( i == 0 && j == 0 )) mtrxmaxmin[0][1] = mtrxa[i][j]; Incremento la somma dei valori man mano che li acquisisco mtrxmedia[0] += mtrxa[i][j] / (rows * cols); Politecnico di Milano - DEI 34

35 Esercizio 5 - Soluzione - Visualizzazione matrice 1 - printf("la matrice inserita e : "); for(i = 0; i < rows ; i++) for(j = 0; j < cols; j++) printf(" %3d ", mtrxa[i][j]); printf(" "); Visualizzo massimo, minimo e media printf("max: %d: %d: %.5f", mtrxmaxmin[0][0], mtrxmaxmin[0] [1], mtrxmedia[0]); Analogamente a quanto già fatto, memorizzo e visualizzo la seconda matrice. Per quest ultima non chiedo più in ingresso le dimensioni perché le pongo uguali a quelle della matrice 1. Politecnico di Milano - DEI 35

36 Esercizio 5 - Soluzione - Richiesta ed esecuzione dell operazione da effettuare - Il blocco di selezione deve prevedere i seguenti casi: differenza somma prodotto Utilizziamo un blocco switch per differenziare i casi: switch (op case 'd': differenza break; case 's': somma break; case 'p': prodotto break; case '' : caso in cui venga dato l invio senza aver effettuato nessuna scelta break; default: printf("%c - Operazione non nota", op); isbuilt = 0; break; Politecnico di Milano - DEI 36

37 Esercizio 5 - Soluzione - Richiesta ed esecuzione dell operazione da effettuare - Analizziamo i casi nel dettaglio: case 'd': printf("effettuo la DIFFERENZA"); for(i = 0; i < rows ; i++) for(j = 0; j < cols; j++) res[i][j] = mtrxa[i][j] - mtrxb[i][j]; break; Politecnico di Milano - DEI 37

38 Esercizio 5 - Soluzione case 's': printf("effettuo la SOMMA"); for(i = 0; i < rows ; i++) for(j = 0; j < cols; j++) res[i][j] = mtrxa[i][j] + mtrxb[i][j]; break; case 'p': printf("effettuo il PRODOTTO"); for(i = 0; i < rows ; i++) for(j = 0; j < cols; j++) res[i][j] = mtrxa[i][j] * mtrxb[i][j]; break; case '\n' : /*Non faccio nulla*/ break; Politecnico di Milano - DEI 38

39 Esercizio 5 - Soluzione - Visualizzazione risultato - Nel blocco switch abbiamo usato la variabile isbuilt che ci avvisa se il risultato res[][] è stato effettivamente calcolato. isbuilt appartiene ad un tipo di variabili, di solito booleane, chiamate flag (bandierine). I flag servono per eseguire porzioni di codice solo se hanno valore vero, in tala caso si dice che il flag è alzato. La visualizzazione del risultato è effettuata solo se il flag è alto, ovvero: isbuilt == 1. if (isbuilt) for(i = 0; i < rows ; i++) for(j = 0; j < cols; j++) printf(" %3d ", res[i][j]); printf("\n"); Politecnico di Milano - DEI 39

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

Strutture. Strutture e Unioni. Definizione di strutture (2) Definizione di strutture (1)

Strutture. Strutture e Unioni. Definizione di strutture (2) Definizione di strutture (1) Strutture Strutture e Unioni DD cap.10 pp.379-391, 405-406 KP cap. 9 pp.361-379 Strutture Collezioni di variabili correlate (aggregati) sotto un unico nome Possono contenere variabili con diversi nomi

Dettagli

Esercizi di programmazione in C

Esercizi di programmazione in C Esercizi di programmazione in C Esercizio 1 Scrivere un programma in linguaggio C che legga da tastiera una sequenza di lunghezza ignota a priori di numeri interi positivi. Il programma, a partire dal

Dettagli

3. Terza esercitazione autoguidata: progetto gestione voli

3. Terza esercitazione autoguidata: progetto gestione voli 9 3. Terza esercitazione autoguidata: progetto gestione voli Qui ci occupiamo di scrivere un programma abbastanza lungo, dedicato alla gestione di una tabella di dati. Una tabella e una struttura dati

Dettagli

Corso di Informatica Medica Esercitazione 1I 2013-2014.! Alessandro A. Nacci nacci@elet.polimi.it - alessandronacci.com

Corso di Informatica Medica Esercitazione 1I 2013-2014.! Alessandro A. Nacci nacci@elet.polimi.it - alessandronacci.com Corso di Informatica Medica Esercitazione 1I 2013-2014! Alessandro A. Nacci nacci@elet.polimi.it - alessandronacci.com 1 2 Esercizio 1 Scrivere un programma che legga due array di interi da tastiera dica

Dettagli

Gestione delle stringhe in C

Gestione delle stringhe in C Gestione delle stringhe in C 1 Generalità Una stringa è un vettore di caratteri il cui ultimo elemento è un carattere terminatore (o di fine stringa), codificato dal carattere di codice 0 e rappresentato

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

Esercitazione 3. Corso di Fondamenti di Informatica

Esercitazione 3. Corso di Fondamenti di Informatica Dipartimento di Informatica e Sistemistica Antonio Ruberti Sapienza Università di Roma Esercitazione 3 Corso di Fondamenti di Informatica Laurea in Ingegneria Informatica (Canale di Ingegneria delle Reti

Dettagli

Gestione di files Motivazioni

Gestione di files Motivazioni Gestione di files Motivazioni Un programma in esecuzione legge (sequenzialmente) una sequenza di caratteri prodotti "al volo" dall'utente (tramite tastiera) il programma in esecuzione scrive (sequenzialmente)

Dettagli

Unipol Assicurazioni SpA Cumulative Auto Bologna 12/01/2015 11:18

Unipol Assicurazioni SpA Cumulative Auto Bologna 12/01/2015 11:18 ESER. POL AGEN. POL RAMO POL NUM. POL. ESER. SIN AGEN. SIN. NUM. SIN RAMO SIN. ISPETTORATO DATA AVVENIM. DATA CHIUSURATIPO DEN. TIPO CHIUSTP RESP ASSICURATO PREVENTIVO PAGATO DA RECUPERARE 2007 1467 130

Dettagli

RICERCA DI UN ELEMENTO

RICERCA DI UN ELEMENTO RICERCA DI UN ELEMENTO Si legga da tastiera un array di N elementi (N stabilito dall utente) Si richieda un elemento x il programma deve cercare l elemento x nell array Se l elemento è presente, deve visualizzare

Dettagli

Fondamenti di Informatica 2

Fondamenti di Informatica 2 Fondamenti di Informatica 2 della prova scritta del 28 Febbraio 2006 Esercizio 1 (4 punti) Date le seguenti variabili int A[] = 2,3,7,-2,5,8,-4; int N = 7; int min = 3; int i; Scrivere la porzione di codice

Dettagli

SOLUZIONE ESERCIZIO 1

SOLUZIONE ESERCIZIO 1 SOLUZIONE ESERCIZIO 1 Progettare un algoritmo che dati tre numeri (voti) a, b, c che possono assumere i valori interi da 18 a 30, calcoli la loro media. #include void main() { int a, b, c; float

Dettagli

Caratteri e stringhe Esercizi risolti

Caratteri e stringhe Esercizi risolti Esercizi risolti 1 Esercizio: Conta vocali e consonanti Scrivere un programma in linguaggio C che legga una frase introdotta da tastiera. La frase è terminata dall introduzione del carattere di invio.

Dettagli

LUdeS Informatica 2 EXCEL. Seconda parte AA 2013/2014

LUdeS Informatica 2 EXCEL. Seconda parte AA 2013/2014 LUdeS Informatica 2 EXCEL Seconda parte AA 2013/2014 STAMPA Quando si esegue il comando FILE STAMPA, Excel manda alla stampante tutte le celle del foglio di lavoro corrente che hanno un contenuto. Il numero

Dettagli

Laboratorio di Fondamenti di Informatica anno accademico 2015-2016. Esercizi proposti il 09-12-2015

Laboratorio di Fondamenti di Informatica anno accademico 2015-2016. Esercizi proposti il 09-12-2015 Laboratorio di Fondamenti di Informatica anno accademico 2015-2016 Esercizi proposti il 09-12-2015 ESERCIZI GUIDATI Gli esercizi saranno svolti in aula dal docente di laboratorio per illustrare alcuni

Dettagli

4 Le liste collegate 4.0. Le liste collegate. 4 Le liste collegate Rappresentazione di liste 4.1 Rappresentazione di liste

4 Le liste collegate 4.0. Le liste collegate. 4 Le liste collegate Rappresentazione di liste 4.1 Rappresentazione di liste 4 Le liste collegate 4.0 Le liste collegate c Diego Calvanese Fondamenti di Informatica Corso di Laurea in Ingegneria Elettronica A.A. 2001/2002 4.0 0 4 Le liste collegate Rappresentazione di liste 4.1

Dettagli

Tavola 1 - Prezzi al consumo relativi alla benzina verde con servizio alla pompa. Firenze, Grosseto, Pisa, Pistoia. Da Agosto 2008 ad Aprile 2012

Tavola 1 - Prezzi al consumo relativi alla benzina verde con servizio alla pompa. Firenze, Grosseto, Pisa, Pistoia. Da Agosto 2008 ad Aprile 2012 Tavola 1 - Prezzi al consumo relativi alla benzina verde con servizio alla pompa. Firenze, Grosseto, Pisa, Pistoia. Benzina verde con servizio alla pompa Ago-08 Set-08 Ott-08 Nov-08 Dic-08 Firenze 1,465

Dettagli

Il comando provoca il salvataggio dello stato e la terminazione dell esecuzione.

Il comando provoca il salvataggio dello stato e la terminazione dell esecuzione. Scrivere un programma per la gestione di una videoteca. Il programma deve essere in grado di tenere traccia dello stato corrente (presente/in prestito a x/smarrito da x/danneggiato da x a livello nn) e

Dettagli

Esercitazione 10. Strutture ed Enumerazioni. Allocazione dinamica di memoria

Esercitazione 10. Strutture ed Enumerazioni. Allocazione dinamica di memoria Esercitazione 10 Strutture ed Enumerazioni Allocazione dinamica di memoria ESERCIZIO Scrivere una funzione che, dato un array di interi bidimensionale di dimensione n n, calcoli e stampi la somma degli

Dettagli

Linguaggio C - Funzioni

Linguaggio C - Funzioni Linguaggio C - Funzioni Funzioni: Il linguaggio C è di tipo procedurale; ogni programma viene suddiviso in sottoprogrammi, ognuno dei quali svolge un determinato compito. I sottoprogrammi si usano anche

Dettagli

Record in C: il costruttore struct.

Record in C: il costruttore struct. Record in C: il costruttore struct. Le variabili di tipo record e i nuovi tipi record si dichiarano in C tramite il costruttore di tipo struct:. ::= ;

Dettagli

http://esamix.labx Quotazione compareto( ) Quotazione piurecente( ) Quotazione Quotazione Quotazione non trovato count( )

http://esamix.labx Quotazione compareto( ) Quotazione piurecente( ) Quotazione Quotazione Quotazione non trovato count( ) Materiale di ausilio utilizzabile durante l appello: tutto il materiale è a disposizione, inclusi libri, lucidi, appunti, esercizi svolti e siti Web ad accesso consentito in Lab06. L utilizzo di meorie

Dettagli

Esercizi svolti durante le ore di Informatica e Sistemi automatici nelle classi del Liceo Scientifico Tecnologico del Liceo Milli di Teramo

Esercizi svolti durante le ore di Informatica e Sistemi automatici nelle classi del Liceo Scientifico Tecnologico del Liceo Milli di Teramo Esercizi svolti durante le ore di Informatica e Sistemi automatici nelle classi del Liceo Scientifico Tecnologico del Liceo Milli di Teramo /*Caricare un vettore di n numeri float, ordinarlo e e stamparlo

Dettagli

Creare una funzione float square(float x). La funzione deve restituire il quadrato del parametro x.

Creare una funzione float square(float x). La funzione deve restituire il quadrato del parametro x. Funzioni Esercizio 1 Creare una funzione float square(float x). La funzione deve restituire il quadrato del parametro x. Creare un altra funzione, di nome float cube(float x), che restituisce invece il

Dettagli

Appunti del corso di Informatica 1. 6 Introduzione al linguaggio C

Appunti del corso di Informatica 1. 6 Introduzione al linguaggio C Università di Roma Tre Dipartimento di Matematica e Fisica Corso di Laurea in Matematica Appunti del corso di Informatica 1 (IN110 Fondamenti) 6 Introduzione al linguaggio C Marco Liverani (liverani@mat.uniroma3.it)

Dettagli

Appunti del corso di Informatica 1 (IN110 Fondamenti) 6 Introduzione al linguaggio C

Appunti del corso di Informatica 1 (IN110 Fondamenti) 6 Introduzione al linguaggio C Università di Roma Tre Facoltà di Scienze M.F.N. Corso di Laurea in Matematica Appunti del corso di Informatica 1 (IN110 Fondamenti) 6 Introduzione al linguaggio C Marco Liverani (liverani@mat.uniroma3.it)

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

PIANO DI LAVORO. a.s. 2015 / 2016

PIANO DI LAVORO. a.s. 2015 / 2016 PIANO DI LAVORO a.s. 2015 / 2016 Materia: INFORMATICA Classe: terza informatica- sez. A Data di presentazione: 15/10/2015 DOCENTI FIRMA Cerri Marta Bergamasco Alessandra Posta elettronica: itisleon@tin.it

Dettagli

LABORATORIO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO 2014 2015 15.V.2015. Indice

LABORATORIO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO 2014 2015 15.V.2015. Indice LABORATORIO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO 2014 2015 15.V.2015 VINCENZO MARRA Indice Parte 1. Input/Output standard dalla console 2 Esercizio 1 2 Eco

Dettagli

Introduzione al linguaggio C Gli array

Introduzione al linguaggio C Gli array Introduzione al linguaggio C Gli array Vettori nome del vettore (tutti gli elementi hanno lo stesso nome, c) Vettore (Array) Gruppo di posizioni (o locazioni di memoria) consecutive Hanno lo stesso nome

Dettagli

Esame del 3 febbraio 2010

Esame del 3 febbraio 2010 Fondamenti di Informatica CdL in Ingegneria Gestionale a.a. 2009/2010 Docente: Andrea Prati Esame del 3 febbraio 2010 Esercizio 1 Vettori Sia data un vettore (array monodimensionale) di interi: int VETT[N];

Dettagli

IL CONCETTO DI FILE. È illecito operare oltre la fine del file.

IL CONCETTO DI FILE. È illecito operare oltre la fine del file. IL CONCETTO DI FILE Un file è una astrazione fornita dal sistema operativo, il cui scopo è consentire la memorizzazione di informazioni su memoria di massa. Concettualmente, un file è una sequenza di registrazioni

Dettagli

RICORSIONE - schema ricorsivo (o induttivo) si esegue l'azione S, su un insieme di dati D, mediante eventuale esecuzione di

RICORSIONE - schema ricorsivo (o induttivo) si esegue l'azione S, su un insieme di dati D, mediante eventuale esecuzione di RICORSIONE - schema ricorsivo (o induttivo) si esegue l'azione S, su un insieme di dati D, mediante eventuale esecuzione di esempio CERCA 90 NEL SACCHETTO = estrai num Casi num 90 Effetti CERCA 90 NEL

Dettagli

Linguaggio C - Stringhe

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

Dettagli

Esempio: Array di struct

Esempio: Array di struct Esempio: Array di struct Scrivere un programma C che definisca la struttura esame, composta dal nome dell esame (stringa) e dal voto (intero). Si leggano poi da terminale n esami, con n definito dall utente

Dettagli

Sistemi Web per il turismo - lezione 3 -

Sistemi Web per il turismo - lezione 3 - Sistemi Web per il turismo - lezione 3 - Software Si definisce software il complesso di comandi che fanno eseguire al computer delle operazioni. Il termine si contrappone ad hardware, che invece designa

Dettagli

Contribuenti Scadenza Denominazione Descrizione

Contribuenti Scadenza Denominazione Descrizione Contribuenti Scadenza Denominazione Descrizione 10-gen colf e badanti (4^ trimestre anno precedente) contributi Inail (4^ rata anno precedente) 16-gen coltivatori e (PC/CF) (4^ rata anno precedente) e

Dettagli

Immettere un importo in euro intero e stampare il numero minimo di banconote da 20, 10, 5 e monete da 1 e 2 euro necessarie per pagarlo.

Immettere un importo in euro intero e stampare il numero minimo di banconote da 20, 10, 5 e monete da 1 e 2 euro necessarie per pagarlo. Immettere un importo in euro intero e stampare il numero minimo di banconote da 20, 10, 5 e monete da 1 e 2 euro necessarie per pagarlo. void main(){ int i; printf("inserire l'importo intero:\n"); scanf("%d",&i);

Dettagli

Algoritmi di Ricerca. Esempi di programmi Java

Algoritmi di Ricerca. Esempi di programmi Java Fondamenti di Informatica Algoritmi di Ricerca Esempi di programmi Java Fondamenti di Informatica - D. Talia - UNICAL 1 Ricerca in una sequenza di elementi Data una sequenza di elementi, occorre verificare

Dettagli

Manuale di configurazione e utilizzo Barcode card

Manuale di configurazione e utilizzo Barcode card Manuale di configurazione e utilizzo Barcode card Premessa... 3 Impostazioni Monetica... 3 Impostazioni... 3 Menu Barcode card... 5 Impostazioni... 6 Registrazione... 6 Elenco barcode card... 7 Configurazione

Dettagli

2. Spiegare brevemente qual è la funzione del compilatore e la sua importanza per il programmatore.

2. Spiegare brevemente qual è la funzione del compilatore e la sua importanza per il programmatore. 1 Esercizio 1 1. Immaginate di avere una calcolatore che invece che poter rappresentare i classici due valori per ogni bit (0/1) possa rappresentare 7 valori per ogni bit. (a) Quanti bit gli occorreranno

Dettagli

Breve riepilogo della puntata precedente:

Breve riepilogo della puntata precedente: Breve riepilogo della puntata precedente: 1. In C, il passaggio dei parametri alle funzioni avviene sempre per copia, ovvero il valore del parametro viene copiato all'interno della variabile che rappresenta

Dettagli

CARATTERI E STRINGHE Caratteri e stringhe Funzioni della libreria standard I/O Funzioni della libreria di gestione delle stringhe

CARATTERI E STRINGHE Caratteri e stringhe Funzioni della libreria standard I/O Funzioni della libreria di gestione delle stringhe CARATTERI E STRINGHE Caratteri e stringhe Funzioni della libreria standard I/O Funzioni della libreria di gestione delle stringhe Caratteri e stringhe Caratteri Sono i blocchi costitutivi di ogni programma:

Dettagli

OTTAVA ESPERIENZA DI LABORATORIO. L elaborazione dei files in C

OTTAVA ESPERIENZA DI LABORATORIO. L elaborazione dei files in C CORSO DI LABORATORIO DI INFORMATICA CORSO DI LAUREA IN SDM ANNO ACCADEMICO 2011-2012 Docente: R. Sparvoli Esercitazioni: R. Sparvoli, F. Palma OTTAVA ESPERIENZA DI LABORATORIO L elaborazione dei files

Dettagli

/* esercizio 5. Memorizzare l elenco dei prodotti giacenti in un magazzino in modo da poter effettuare le seguenti operazioni :

/* esercizio 5. Memorizzare l elenco dei prodotti giacenti in un magazzino in modo da poter effettuare le seguenti operazioni : /* esercizio 5. Memorizzare l elenco dei prodotti giacenti in un magazzino in modo da poter effettuare le seguenti operazioni : Stampare le caratteristiche di un determinato prodotto (codice, descrizione,

Dettagli

Sistemi Operativi Anno Accademico 2011/2012. Segnali: Interrupt software per la gestione di eventi asincroni

Sistemi Operativi Anno Accademico 2011/2012. Segnali: Interrupt software per la gestione di eventi asincroni Anno Accademico 2011/2012 Segnali: Interrupt software per la gestione di eventi asincroni Concetto di segnale Un segnale è un interrupt software Un segnale può essere generato da un processo utente o dal

Dettagli

Vettori Algoritmi elementari di ordinamento

Vettori Algoritmi elementari di ordinamento Dipartimento di Informatica e Sistemistica Antonio Ruberti Sapienza Università di Roma Vettori Algoritmi elementari di ordinamento Corso di Fondamenti di Informatica Laurea in Ingegneria Informatica (Canale

Dettagli

Ente: COMUNE DI PORTICI

Ente: COMUNE DI PORTICI MUTUI IN AMMORTAMENTO ANNO 2010 CASSA DD.PP. Ente: COMUNE DI PORTICI Tipo opera: Edilizia pubblica e sociale-immobile 4502930/00 21-dic-06 200.000,00 01-gen-07 30-giu-10 179.465,06 3.676,97 3.748,13 7.425,10

Dettagli

Libreria standard Java possiede un enorme libreria di classi standard organizzata in vari package che raccolgono le classi secondo un organizzazione

Libreria standard Java possiede un enorme libreria di classi standard organizzata in vari package che raccolgono le classi secondo un organizzazione Libreria standard Java possiede un enorme libreria di classi standard organizzata in vari package che raccolgono le classi secondo un organizzazione basata sul campo d utilizzo. I principali package sono:

Dettagli

Ricerche, ordinamenti e fusioni. 5.1 Introduzione. 5.2 Ricerca completa

Ricerche, ordinamenti e fusioni. 5.1 Introduzione. 5.2 Ricerca completa Ricerche, ordinamenti e fusioni 5.1 Introduzione Questo capitolo ci permette di fare pratica di programmazione utilizzando gli strumenti del linguaggio introdotti finora. A una prima lettura possono essere

Dettagli

3.5.1 PREPARAZ1ONE I documenti che si possono creare con la stampa unione sono: lettere, messaggi di posta elettronica, o etichette.

3.5.1 PREPARAZ1ONE I documenti che si possono creare con la stampa unione sono: lettere, messaggi di posta elettronica, o etichette. 3.5 STAMPA UNIONE Le funzioni della stampa unione (o stampa in serie) permettono di collegare un documento principale con un elenco di nominativi e indirizzi, creando così tanti esemplari uguali nel contenuto,

Dettagli

Informatica Teorica. Macchine a registri

Informatica Teorica. Macchine a registri Informatica Teorica Macchine a registri 1 Macchine a registri RAM (Random Access Machine) astrazione ragionevole di un calcolatore nastro di ingresso nastro di uscita unità centrale in grado di eseguire

Dettagli

Concetti chiave. Struct. Variabili strutturate: il tipo struct Elementi di una struttura typedef e struct Array di strutture

Concetti chiave. Struct. Variabili strutturate: il tipo struct Elementi di una struttura typedef e struct Array di strutture Concetti chiave Struct Variabili strutturate: il tipo struct Elementi di una struttura typedef e struct Array di strutture Struct Per aggregare elementi di tipo diverso si utilizza una struttura. struct

Dettagli

ESERCIZIO 1 (Definizione funzioni passaggio parametri per copia)

ESERCIZIO 1 (Definizione funzioni passaggio parametri per copia) ESERCIZIO 1 (Definizione funzioni passaggio parametri per copia) Scrivere una funzione per definire se un numero è primo e un programma principale minimale che ne testa la funzionalità. #include

Dettagli

UD4 - MATLAB. M-file. Efficienza degli algoritmi. Formati d uscita

UD4 - MATLAB. M-file. Efficienza degli algoritmi. Formati d uscita UD4 - MATLAB M-file. Efficienza degli algoritmi. Formati d uscita M-files In MatLab è possibile eseguire istruzioni contenute in file esterni; Tali file sono chiamati M-file perché devono avere estensione.m

Dettagli

MAGAZZINO.CPP January 2, 2008 Page 1

MAGAZZINO.CPP January 2, 2008 Page 1 MAGAZZINO.CPP January 2, 2008 Page 1 1 #include 2 #include 3 #include 4 // ==================================================================== 5 // Versione 1.1 1/1/2008

Dettagli

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica Corso di Laurea Ingegneria Informatica Fondamenti di Informatica Dispensa E04 Esempi di algoritmi e programmi C. Limongelli - A. Miola Novembre 2011 1 Contenuti q Somma di una sequenza di numeri interi

Dettagli

ESAME SCRITTO DI ELEMENTI DI INFORMATICA E PROGRAMMAZIONE. 10 Settembre 2013

ESAME SCRITTO DI ELEMENTI DI INFORMATICA E PROGRAMMAZIONE. 10 Settembre 2013 COGNOME E NOME: MATRICOLA: Civile Ambiente e Territorio Non si possono consultare manuali, appunti e calcolatrici. Esercizio 1: Rappresentare i numeri 37 e 90 (in base 10) in notazione binaria in complemento

Dettagli

1: /* Nome del programma: gestione_articoli_01.cpp 2: Realizzato da: Gaetano Della Cerra 3: Data: 06/02/2010 - III Informatica Serale I.T.I.S.

1: /* Nome del programma: gestione_articoli_01.cpp 2: Realizzato da: Gaetano Della Cerra 3: Data: 06/02/2010 - III Informatica Serale I.T.I.S. 1: /* Nome del programma: gestione_articoli_01.cpp 2: Realizzato da: Gaetano Della Cerra 3: Data: 06/02/2010 - III Informatica Serale I.T.I.S. Molinari 4: Il programma gestisce gli articoli di un negozio

Dettagli

VBA è un linguaggio di scripting derivato da Visual Basic, da cui prende il nome. Come ogni linguaggio ha le sue regole.

VBA è un linguaggio di scripting derivato da Visual Basic, da cui prende il nome. Come ogni linguaggio ha le sue regole. Excel VBA VBA Visual Basic for Application VBA è un linguaggio di scripting derivato da Visual Basic, da cui prende il nome. Come ogni linguaggio ha le sue regole. 2 Prima di iniziare. Che cos è una variabile?

Dettagli

INFORMATICA E PROGRAMMAZIONE PROF. M. GIACOMIN ESPERIENZA IN AULA: ELABORAZIONE DI IMMAGINI A COLORI IN LINGUAGGIO C

INFORMATICA E PROGRAMMAZIONE PROF. M. GIACOMIN ESPERIENZA IN AULA: ELABORAZIONE DI IMMAGINI A COLORI IN LINGUAGGIO C INFORMATICA E PROGRAMMAZIONE PROF. M. GIACOMIN ESPERIENZA IN AULA: ELABORAZIONE DI IMMAGINI A COLORI IN LINGUAGGIO C DESCRIZIONE GENERALE In questa esperienza il C verrà utilizzato per elaborare immagini

Dettagli

Tipi primitivi. Ad esempio, il codice seguente dichiara una variabile di tipo intero, le assegna il valore 5 e stampa a schermo il suo contenuto:

Tipi primitivi. Ad esempio, il codice seguente dichiara una variabile di tipo intero, le assegna il valore 5 e stampa a schermo il suo contenuto: Tipi primitivi Il linguaggio Java offre alcuni tipi di dato primitivi Una variabile di tipo primitivo può essere utilizzata direttamente. Non è un riferimento e non ha senso tentare di istanziarla mediante

Dettagli

Gestione dei File. dischi nastri cd

Gestione dei File. dischi nastri cd Gestione dei File Per mantenere disponibili i dati tra le diverse esecuzioni di un programma, questi si devono archiviare in file su memoria di massa (dati persistenti): dischi nastri cd Un file è un astrazione

Dettagli

Laboratorio di programmazione

Laboratorio di programmazione Laboratorio di programmazione Lezione VI Tatiana Zolo tatiana.zolo@libero.it 1 LE STRUCT Tipo definito dall utente i cui elementi possono essere eterogenei (di tipo diverso). Introduce un nuovo tipo di

Dettagli

Appunti tratti dal videocorso on-line di Algoritmi e Programmazione Avanzata By ALeXio

Appunti tratti dal videocorso on-line di Algoritmi e Programmazione Avanzata By ALeXio Appunti tratti dal videocorso on-line di Algoritmi e Programmazione Avanzata By ALeXio 1-La memoria dinamica La scrittura di un programma (indipendentemente dal linguaggio adottato) deve sempre tener conto

Dettagli

Esercizio 1. Esercizio 1

Esercizio 1. Esercizio 1 Esercizio 1 Un registratore di cassa registra su di un file binario alcuni dati relativi agli scontrini emessi. In particolare, tramite una struttura dati di nome scontrino, il registratore di cassa tiene

Dettagli

Le variabili. Olga Scotti

Le variabili. Olga Scotti Le variabili Olga Scotti Cos è una variabile Le variabili, in un linguaggio di programmazione, sono dei contenitori. Possono essere riempiti con un valore che poi può essere riletto oppure sostituito.

Dettagli

Lab 11 Gestione file di testo"

Lab 11 Gestione file di testo Fondamenti di Informatica e Laboratorio T-AB Ingegneria Elettronica e Telecomunicazioni Lab 11 Gestione file di testo" Lab15 1 Esercizio 1 n Realizzare un programma che, aperto un file di testo di nome

Dettagli

IEIM. Esercizio Gestione Automobili Strutture e Files 2014-2015. Alessandro A. Nacci nacci@elet.polimi.it - alessandronacci.it

IEIM. Esercizio Gestione Automobili Strutture e Files 2014-2015. Alessandro A. Nacci nacci@elet.polimi.it - alessandronacci.it IEIM Esercizio Gestione Automobili Strutture e Files 2014-2015 Alessandro A. Nacci nacci@elet.polimi.it - alessandronacci.it 1 2 Automobili Rappresentare in C una automobile. Nel nostro caso, una automobile

Dettagli

Programmazione Orientata agli Oggetti in Linguaggio Java

Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione Orientata agli Oggetti in Linguaggio Java Classi e Oggetti: Metafora Parte a versione 2.2 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)

Dettagli

La somma di 12 e 30 è 42

La somma di 12 e 30 è 42 Nuovo Esercizio Supponendo che: all operazione somma corrisponda il numero 1 all operazione differenza corrisponda il numero 2 all operazione modulo corrisponda il numero 3 all operazione divisione intera

Dettagli

TUTORATO di LINGUAGGI I

TUTORATO di LINGUAGGI I TUTORATO di LINGUAGGI I Enrico Vianello TUTORATO di LINGUAGGI I contatti utili LE LEZIONI SI TERRANNO: VENERDI 12.30-14.30 PER INFORMAZIONI e DOMANDE: enrico.vianello@student.unife.it IL MATERIALE UTILIZZATO

Dettagli

Algoritmo. I dati su cui opera un'istruzione sono forniti all'algoritmo dall'esterno oppure sono il risultato di istruzioni eseguite precedentemente.

Algoritmo. I dati su cui opera un'istruzione sono forniti all'algoritmo dall'esterno oppure sono il risultato di istruzioni eseguite precedentemente. Algoritmo Formalmente, per algoritmo si intende una successione finita di passi o istruzioni che definiscono le operazioni da eseguire su dei dati (=istanza del problema): in generale un algoritmo è definito

Dettagli

MANUALE UTENTE PROCEDURA PLANET WEB INTERPRISE (II edizione)

MANUALE UTENTE PROCEDURA PLANET WEB INTERPRISE (II edizione) UNIVERSITA DEGLI STUDI DI MACERATA AREA PERSONALE SETTORE P.T.A. Ufficio presenze e affari generali P.T.A. MANUALE UTENTE PROCEDURA PLANET WEB INTERPRISE (II edizione) Ufficio presenze affari generali

Dettagli

3. La sintassi di Java

3. La sintassi di Java pag.9 3. La sintassi di Java 3.1 I tipi di dati statici In Java, come in Pascal, esistono tipi di dati statici predefiniti e sono i seguenti: byte 8 bit da -128 a 127 short 16 bit coincide con l integer

Dettagli

Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a. 2009-10 I scritto Febbraio 11 Febbraio 2011

Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a. 2009-10 I scritto Febbraio 11 Febbraio 2011 Cognome Matricola Nome Postazione PC Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a. 2009-10 I scritto Febbraio 11 Febbraio 2011 Quesito La Biblioteca è costituita da due array: il primo

Dettagli

La selezione binaria

La selezione binaria Andrea Marin Università Ca Foscari Venezia Laurea in Informatica Corso di Programmazione part-time a.a. 2011/2012 Introduzione L esecuzione di tutte le istruzioni in sequenza può non è sufficiente per

Dettagli

Catasto Progetti Manuale Utente. Autorità di Gestione POR 2000-2006. Manuale Utente. - Utenti Remoti - Pagina: 1-1

Catasto Progetti Manuale Utente. Autorità di Gestione POR 2000-2006. Manuale Utente. - Utenti Remoti - Pagina: 1-1 Catasto Progetti Manuale Utente CATASTO PROGETTI Manuale Utente - Utenti Remoti - Pagina: 1-1 1 INDICE FIGURE Figura 3-1: Menù Principale del Programma... 3-1 Figura 3-2: Scheda tipo... 3-2 Figura 3-3:

Dettagli

Le stringhe. Le stringhe

Le stringhe. Le stringhe Informatica: C++ Gerboni Roberta Stringhe di caratteri (esempi di utilizzo dei vettori) Nel linguaggio C++ una stringa è semplicemente un vettore di caratteri Vettori di caratteri La stringa "hello" è

Dettagli

ARRAY BIDIMENSIONALI float [][] mx = new float[3][4]; (float []) [] mx = new float[3][4];

ARRAY BIDIMENSIONALI float [][] mx = new float[3][4]; (float []) [] mx = new float[3][4]; ARRAY BIDIMENSIONALI Si possono definire array di qualunque tipo di dato, quindi anche di altre array float [][] mx = new float[3][4]; ovvero.. (float []) [] mx = new float[3][4]; La loro motivazione (storica)

Dettagli

Dall Algoritmo al Programma. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni

Dall Algoritmo al Programma. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni Dall Algoritmo al Programma Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni IL PROGRAMMA Gli algoritmi sono modelli di descrizione astratti e per controllarne il funzionamento devono essere

Dettagli

Soluzioni degli esercizi di riepilogo (Fondamenti di Informatica 1 Walter Didimo)

Soluzioni degli esercizi di riepilogo (Fondamenti di Informatica 1 Walter Didimo) Soluzioni degli esercizi di riepilogo (Fondamenti di Informatica 1 Walter Didimo) Soluzioni delle prove al calcolatore Esercizio 7 (esame del 08/01/2009) class TabellaDiNumeri{ private double[][] tabella;

Dettagli

Cos è una stringa (1) Stringhe. Leggere e scrivere stringhe (1) Cos è una stringa (2) DD Cap. 8 pp. 305-341 KP Cap. 6 pp. 241-247

Cos è una stringa (1) Stringhe. Leggere e scrivere stringhe (1) Cos è una stringa (2) DD Cap. 8 pp. 305-341 KP Cap. 6 pp. 241-247 Cos è una stringa (1) Stringhe DD Cap. 8 pp. 305-341 KP Cap. 6 pp. 241-247 Una stringa è una serie di caratteri trattati come una singola unità. Essa potrà includere lettere, cifre, simboli e caratteri

Dettagli

I puntatori e l allocazione dinamica di memoria

I puntatori e l allocazione dinamica di memoria I puntatori e l allocazione dinamica di memoria L allocazione delle variabili Allocazione e rilascio espliciti di memoria Le funzioni malloc e free 2 2006 Politecnico di Torino 1 Allocare = collocare in

Dettagli

Problem solving elementare su dati vettoriali

Problem solving elementare su dati vettoriali Problem solving elementare su dati vettoriali Introduzione Verifiche su sequenze di dati Selezione o ricerca di dati 2 2006 Politecnico di Torino 1 Introduzione (1/2) I problemi di verifica consistono

Dettagli

Costruzione di Siti Web con PHP e MySQL. Lezione 5: Cicli, Funzioni, Operazioni con Stringhe e Date

Costruzione di Siti Web con PHP e MySQL. Lezione 5: Cicli, Funzioni, Operazioni con Stringhe e Date Costruzione di Siti Web con PHP e MySQL Lezione 5: Cicli, Funzioni, Operazioni con Stringhe e Date Argomenti della lezione In questa lezione si riprenderanno le strutture di controllo, verrà introdotto

Dettagli

ESAME SCRITTO DI ELEMENTI DI INFORMATICA E PROGRAMMAZIONE. 27 Gennaio 2015

ESAME SCRITTO DI ELEMENTI DI INFORMATICA E PROGRAMMAZIONE. 27 Gennaio 2015 COGNOME E NOME: MATRICOLA: Civile Ambiente e Territorio Non si possono consultare manuali, appunti e calcolatrici. Esercizio 1: [3 punto] Rappresentare i numeri 36 e 91 (in base 10) in notazione binaria

Dettagli

Università di Torino Facoltà di Scienze MFN Corso di Studi in Informatica. Programmazione I - corso B a.a. 2009-10. prof.

Università di Torino Facoltà di Scienze MFN Corso di Studi in Informatica. Programmazione I - corso B a.a. 2009-10. prof. Università di Torino Facoltà di Scienze MFN Corso di Studi in Informatica Programmazione I - corso B a.a. 009-10 prof. Viviana Bono Blocco 9 Metodi statici: passaggio parametri, variabili locali, record

Dettagli

1-Scheda Obiettivo-ISTRUTTORIA ED APPROVAZIONE STRUMENTI URBANISTICI ESECUTIVI, REGOLAMENTI E PROGETTI URBANISTICI

1-Scheda Obiettivo-ISTRUTTORIA ED APPROVAZIONE STRUMENTI URBANISTICI ESECUTIVI, REGOLAMENTI E PROGETTI URBANISTICI -Scheda Obiettivo-ISTRUTTORIA ED APPROVAZIONE STRUMENTI URBANISTICI ESECUTIVI, REGOLAMENTI E PROGETTI URBANISTICI Servizio : Responsabile :!" #! $% CdC/Ufficio : Obiettivo : &' % Unità di Operazio Tipo

Dettagli

FUNZIONI. La libreria standard del C fornisce una ricca collezione di funzioni, come le funzioni:

FUNZIONI. La libreria standard del C fornisce una ricca collezione di funzioni, come le funzioni: FUNZIONI La libreria standard del C fornisce una ricca collezione di funzioni, come le funzioni: double sqrt(double) double pow (double, double) della libreria matematica, che abbiamo già usato anche senza

Dettagli

Nascita di Java. Che cos e Java? Caratteristiche di Java. Java: linguaggio a oggetti

Nascita di Java. Che cos e Java? Caratteristiche di Java. Java: linguaggio a oggetti Nascita di Java L uscita di Java, verso la metà degli anni novanta, fu accolta con molto entusiasmo dalla comunità dei programmatori e dei provider di servizi internet perché permetteva agli utenti del

Dettagli

Tipi elementari, costanti. Tipi di dati. VALORI: un insieme dei valori del tipo OPERAZIONI: per operare su tali valori. Tipi. intero reale carattere

Tipi elementari, costanti. Tipi di dati. VALORI: un insieme dei valori del tipo OPERAZIONI: per operare su tali valori. Tipi. intero reale carattere Tipi elementari, costanti 1 Tipi di dati VALORI: un insieme dei valori del tipo OPERAZIONI: per operare su tali valori Tipi Semplici intero reale carattere Strutturati 2 1 Tipo intero Gli interi servono

Dettagli

Verifica che una grammatica sia Context Free nel GrammaReader

Verifica che una grammatica sia Context Free nel GrammaReader Verifica che una grammatica sia Context Free nel GrammaReader Sommario Dispensa di Linguaggi di Programmazione Corrado Mencar Pasquale Lops In questa dispensa si descrivono alcune soluzioni per verificare

Dettagli

Appello di Informatica B

Appello di Informatica B Politecnico di Milano Facoltà di Ingegneria Industriale 19 febbraio 2004 Appello di Informatica B Prof. Angelo Morzenti - Prof. Vincenzo Martena Cognome e nome: Matricola: Tipo di prova: recupero I prova

Dettagli

Esercitazione 7. Procedure e Funzioni

Esercitazione 7. Procedure e Funzioni Esercitazione 7 Procedure e Funzioni Esercizio Scrivere un programma che memorizza in un array di elementi di tipo double le temperature relative al mese corrente e ne determina la temperatura massima,

Dettagli

Fondamenti di Informatica T. Linguaggio C: File

Fondamenti di Informatica T. Linguaggio C: File Linguaggio C: File I File Il file e` l'unita` logica di memorizzazione dei dati su memoria di massa, che consente una memorizzazione persistente dei dati, non limitata dalle dimensioni della memoria centrale.

Dettagli

(1) (2) (3) (4) 11 nessuno/a 9 10. (1) (2) (3) (4) X è il minore tra A e B nessuno/a X è sempre uguale ad A X è il maggiore tra A e B

(1) (2) (3) (4) 11 nessuno/a 9 10. (1) (2) (3) (4) X è il minore tra A e B nessuno/a X è sempre uguale ad A X è il maggiore tra A e B Compito: Domanda 1 Per l'algoritmo fornito di seguito, qual è il valore assunto dalla variabile contatore quando l'algoritmo termina: Passo 1 Poni il valore di contatore a 1 Passo 2 Ripeti i passi da 3

Dettagli

ESERCIZI DI PROGRAMMAZIONE C/C++ per le classi terza

ESERCIZI DI PROGRAMMAZIONE C/C++ per le classi terza ESERCIZI DI PROGRAMMAZIONE C/C++ per le classi terza vers.0 in lavorazione Docente SAFFI FABIO Contenuti Implementazione delle operazioni di base mediante main in un unico file sorgente... 2 Struttura

Dettagli