Linguaggio C. Aggregati di dati
|
|
- Rosalia Benedetti
- 6 anni fa
- Visualizzazioni
Transcript
1 Linguaggio C Aggregati di dati
2 Limiti delle variabili semplici Come elaborare e salvare grandi quantità di dati? Ad esempio, un sensore invia un dato ogni intervallo di tempo, la sequenza va poi conservata per un certo tempo per essere elaborata Occorre definire tante variabili diverse ad esempio numerate? Come descrivere dati strutturati anagrafici? Ad esempio dati anagrafici di un comune molte variabili scollegate, nome, cognome, data nascita, residenza, etc? Ripetute per ogni cittadino?
3 Strutture La struttura è una collezione di variabili (di solito non dello stesso tipo) raggruppate sotto lo stesso nome. struct tempo {! int ore;! int minuti;! int secondi;! } orologio1, orologio2;! struct tempo {! int ore;! int minuti;! int secondi;! };! struct tempo orologio1, orologio2;!
4 Nuovi tipi di dati: typedef L'istruzione typedef definisce un sinonimo per un tipo. typedef int intero; intero x = 3;! Con le strutture, typedef serve a definire un sinonimo per strutture complesse typedef struct tempo{...} orologio;! orologio swatch, sector;! typedef è un sinonimo per la dichiarazione di istanze di strutture /*dichiarazione con typedef*/! typedef struct {int x; int y;} coord;! /*istanza*/! coord punto1, punto2;! /*dichiarazione senza typedef*/! struct coord {int x; int y;};! /*istanza*/! struct coord punto1, punto2;!
5 Operatori per strutture l'operatore punto (".") è lo strumento per accedere ai singoli campi delle variabili struct orologio1.ore = 18;! orologio1.minuti = 21;! orologio1.secondi = 22;! Le strutture si possono nidificare (cioè si può inserire una struttura dentro un'altra struttura) struct nascita {! struct tempo ora;! struct data data;! };!
6 Esempio concorso # include <stdio.h> /* definizione di tipo globale*/! struct concorso {! int serie;! char organizzatore;! int partecipanti;! };! main()! {! struct concorso c0, c1;! c0.serie = 2; c0.organizzatore = 'F';! c0.partecipanti = 482;! c1.serie = 0; c1.organizzatore = 'G';! c1.partecipanti = 33;! printf("serie della concorso 0: %d\n", c0.serie);! printf("organizzatore della concorso 1: %c\n",! c1.organizzatore);! }!
7 /*Programma distanza con variabili singole*/!.! double lato1, lato2, distanza, x1=1, y1=5, x2=4,! y2=7;! lato1= x2-x1; lato2= y2-y1;! distanza=sqrt(lato1*lato1 + lato2*lato2);! /* visualizzazione */! printf ( la distanza fra i due punti è! %5.2lf\n, distanza);! }! un punto nel piano cartesiano può essere visto come struct o come array
8 /* Programma distanza con struct per punto*/!.! double lato1, lato2, distanza;! struct punto {! double x;! double y;! } p1, p2;! p1.x = 1; p1.y = 5;! p2.x = 4; p2.y = 7;! lato1= p2.x - p1.x; lato2= p2.y - p1.y;! distanza=sqrt(lato1*lato1 + lato2*lato2);! /* visualizzazione! */! printf ( la distanza fra i due punti = %5.2lf\n,! distanza);! }!
9 Molti dati dello stesso tipo Occorre un costruttore che permette di usare lo stesso nome per tante variabili dello stesso tipo Nella notazione matematica (serie, etc) si usano i pedici In C si usano indici Questi dati saranno memorizzati in memoria di lavoro in posizioni contigue L area per memorizzarli sarà statica
10 array La struttura dati che naturalmente si adatta ai costrutti for è l array, Tutti gli elementi! hanno lo stesso! nome c)! cioè la sequenza di valori c[0]! -45! c[1]! 6! organizzati insieme ed c[2]! 0! c[3]! 72! individuabili con un unico nome. c[4]! 1543! c[5]! -89! Il nome dell array è un c[6]! 0! identificatore, ed è possibile c[7]! 62! c[8]! -3! accedere ad ognuno degli c[9]! 1! c[10]! 6453! elementi usando un indice c[11]! 78! (indirizzamento mediante registro indice) che parte da 0 Posizione! dell elemento! nella array c!
11 array a[0] a[1] un array è un insieme di locazioni di memoria con lo stesso nome e distinte da un numero detto indice (in inglese subscript). Gli array si dichiarano come le variabili ma sono seguiti da [n], dove n è una costante ed indica la dimension dell'array int a[6];! char testo[20];! Le singole locazioni di memoria si indicano con i simboli a[0],a[1],a[2],..., a[5]!
12 Memoria per array indirizzi 9, cioè1001 contenuti int pippo[3] pippo & pippo[0] pippo[0] = 0 pippo[1] =2 pippo[2] = 2
13 Dichiarazioni e assegnamenti array Es di dichiarazione: int s[6];! double t[4];! Es. di inizializzazione contestuale: int s[6] = {5, 0, -1, 2, 15, 2};! double t[4] = {0.0, 0.1, 0.2, 0.8};! int s[6] = {0}; assegna 0 a tutti gli elementi! int s[ ] = {5, 0, -1, 2, 15, 2}; calcola! la dimensione dai dati di inizializzazione
14 Inizializzare mediante cicli Per inizializzare in modo regolare: int k; double gi[21];! for (k=0; k<= 20; k++)! gi[k] = k * 0.5;! se k supera 20 accede a posizioni di memoria fuori dell array Per inizializzare mediante lettura : int k; double gi[21];! for (k=0; k<= 20; k++)! scanf ( %lf, &gi[k]);!
15 esempio #include <stdio.h>! /* programma che acquisisce 5 numeri in array e la stampa*/! main()! { int lista[5];! int contavolte = 0, letto = 0;! printf("inserire 5 numeri tra 1 e 10\n");! /* questo ciclo while controlla la gestione dei 5 valori */! while ( contavolte < 5 )! { letto = 0;! /* questo ciclo while aspetta un numero fra 1 e 10*/! while (letto < 1 letto > 10)! { printf("\n Inserisci il num. %d: ", contavolte + 1 );! scanf("%d", &letto );! }! lista[contavolte] = letto;! contavolte++;! }! for (contavolte = 0; contavolte < 5; contavolte++)! printf("\nval. %d=%d", contavolte + 1, lista[contavolte]! );! }!
16 /* Programma distanza - ogni punto è un array di due*/!.! double lato1, lato2, distanza;! double punto1[2], punto2[2];! punto1[0] = 1; punto1[1] = 5;! punto2[0] = 4; punto2[1] = 7;! lato1= punto2[0] - punto1[0] ;! lato2= punto2[1] - punto1[1] ;! distanza=sqrt(lato1*lato1 + lato2*lato2);! /* visualizzazione! */! printf ( la distanza fra i due punti = %5.2lf\n, distanza);! }! Estendere al caso 3D?! Ogni punto è array di 3 posizioni! Estendere a più punti?! Fare array rettangolare: ogni linea è un punto, ogni! colonna i valori di un asse!
17 Esempio: stampa un istogramma #include <stdio.h>! #define SIZE 10! main()! {! int n[ SIZE ] = { 19, 3, 15, 7, 11, 9, 13, 5, 17, 1 };! int i, j;! printf( "%s%13s%17s\n", "Elemento", "Valore", Istogramma! for ( i = 0; i <= SIZE - 1; i++ ) {! printf( "%7d%13d! ", i, n[ i ]) ;! for ( j = 1; j <= n[ i ]; j++ )! /* stampa una barra */! printf( "%c", '*' );! }!} printf( "\n" );!
18 Output del programma Elemento! Valore! Istogramma! 0! 19! *******************! 1! 3! ***! 2! 15! ***************! 3! 7! *******! 4! 11! ***********! 5! 9! *********! 6! 13! *************! 7! 5! *****! 8! 17! *****************! 9! 1! *!
19 massimo rivisto: Trovare il massimo di un array di 5 valori naturali, prendendo il primo come max provvisorio int max, i, corrente, valori[5];! /* lettura*/! for (i = 0; i<5; i++)! scanf ("%6d \n", &valori[i]);! /* calcolo */! max = valori[0];! for (i = 1; i<5; i++)! { if (valori[i] > max) max = valori[i]; }! printf ("il massimo è' %d \n", max);!.!
20 Esempio calcolo vettoriale Scrivere un programma che chiede all utente di inserire due vettori e ne stampa il prodotto scalare e vettoriale. Vettore r, con componenti r1, r2, r3 Vettore s con componenti s1, s2, s3 Prodotto scalare r.s = r1*s1 + r2*s2 +r3*s3 Prodotto vettoriale c è un vettore c1, c2, c3 c1 = r2*s3 r3*s2 c2 = r3*s1 r1*s3 c3 = r1*s2 r2*s1
21 calcolo vettoriale: pezzi della soluzione /* dichiarazioni*/! int comp; double scalare; float r[3], s[3], c[3] = {0.0};! /* lettura dati mediante ciclo for*/! /* calcolo prodotto scalare*/! scalare = 0.0;! for(comp=0;comp<3;comp++)! scalare = scalare + r[comp]*s[comp];! /* calcolo prodotto vettoriale modo diretto*/! c[0] = r[1]*s[2] r[2]*s[1]! c[1] = r[2]*s[0] r[0]*s[2]! c[2] = r[0]*s[1] r[1]*s[0]! /* calcolo prodotto vettoriale: for e indici modulo3*/! for(comp=0;comp<3;comp++)! [comp]=! r[(comp+1)%3]*s[(comp+2)%3]-r[(comp+2)%3]*s[(comp+1)%3];!
22 Array a più dimensioni c0! c1! c2! c3! r0! a[ 0 ][ 0 ] a[ 0 ][ 1 ] a[ 0 ][ 2 ] a[ 0 ][ 3 ]! r1! a[ 1 ][ 0 ] a[ 1 ][ 1 ] a[ 1 ][ 2 ] a[ 1 ][ 3 ]! r2! a[ 2 ][ 0 ] a[ 2 ][ 1 ] a[ 2 ][ 2 ] a[ 2 ][ 3 ]! Nome array! Indice riga! Indice colonna! int a[ 3 ][ 4]! Inizializzare int b[ 2 ][ 2 ] = { { 1, 2 }, { 3, 4 } };! Quello non specificato va a 0 int b[ 2 ][ 2 ] = { { 1 }, { 3, 4 } };! Richiamare un elemento Prima indice di riga, poi di colonna printf( "%d", b[ 0 ][ 1 ] );!
23 Array a più dimensioni /* esempio: immagine*/! const int height = 256;! const int width = 256;! int i, j, image [height][width];! /* inizializzazione con 2 for: uno! per righe e l interno per colonne*/! for(i=0;i< width;i++)! {! for(j=0;j<height;j++)! image[i][j] = i*j;! }!
24 stringhe Stringhe sono array di caratteri first - array di char costanti fra due apici! Dichiarazione e inizializzazione char string1[] = "first";! '\0' termina la stringa! string1 ha quindi 6 elementi! Equivalente a char string1[6] = { 'f', 'i', 'r', 's', 't', '\0' };! Per accedere al singolo carattere string1[ 3 ] is character s! Il nome dell array è il suo indirizzo. & non si usa in scanf scanf( "%s", string1 );!
25 esercizio: Media, mediana, modo su array Media somma valori divisa per il numero occorrenze 1, 2, 3, 4 => la media è 2,5 Mediana il numero nel mezzo di un insieme ordinato 1, 2, 3, 4, 5 => la mediana è 3 Modo il numero che compare più spesso 1, 1, 1, 2, 3, 3, 4, 5 => 1 è il modo
26 Array di strutture come gestire diversi concorsi? array di strutture struct concorso c[3];! Ogni elemento dell array è una struttura conforme al template concorso l'array ha nome c, 3 elementi del tipo struct concorso Per accedere ai singoli elementi dell'array specificare il nome dell'array seguito dall'indice, tra quadre, dell'elemento da referenziare; usare l'operatore punto per accedere al campo voluto.
27 #include <stdio.h>! struct concorso { int serie;! main()! char organizzatore;! int partecipanti;};! { int i; struct concorso c[3];! c[0].serie = 2; c[0].organizzatore = 'F';! c[0].partecipanti = 482;! c[1].serie = 0; c[1].organizzatore = 'G';! c[1].partecipanti = 33;! c[2].serie = 3; c[2].organizzatore = 'E';! c[2].partecipanti = 107;! for(i = 0; i < 3; i++)! printf("%d %c %d\n",c[i].serie,! c[i].organizzatore,c[i].partecipanti);}!
28 Array come campo di struttura /*globale stato del concorso*/! serie struct concorso { int serie;! char organizzatore;! organizzatore int partecipanti;! char stato [2];};! partecipanti main()! { int i; struct concorso mio;! s0 s1 mio.serie = 2;! mio.organizzatore = A';! mio.partecipanti = 15;! mio.stato[0] = T';! mio.stato[1] = F';! printf("%d %c %d\n",mio.serie,! mio.organizzatore,mio.partecipanti);}! for(i = 0; i < 2; i++)! printf("%s",mio.stato[i]);! }!
29 Array come campo di struttura /*locale stato del concorso*/! main()! {struct concorso { int serie;! char organizzatore;! int partecipanti;! char stato [2];};! int i; struct concorso mio;! mio.serie = 2;! mio.organizzatore = A';! mio.partecipanti = 15;! mio.stato[0] = T';! mio.stato[1] = F';! printf("%d %c %d\n",mio.serie,! mio.organizzatore,mio.partecipanti);}! for(i = 0; i < 2; i++)!
30 Problemi di ricerca Esiste un certo dato in un array? Ricerca sequenziale (dall inizio o dalla fine, l unica se i dati non sono ordinati) Ricerca dicotomica (dal mezzo, su dati ordinati)
31 Ricerca sequenziale #include <stdio.h>! #define MAXDIM 100 /* dimensione massima del! vettore */! main()! {int i,k,n;! int V[MAXDIM];! do{! printf("\n Inserire la dimensione del vettore! non superiore a %d\n",maxdim);! scanf("%d",&n);! }while(n>maxdim);! /* inserimento vettore */! for (i=0;i<n;i++)! {! printf("inserire l'elemento %d : ",i+1);! scanf("%d",&v[i]);! }! /* Inserimento del valore da cercare ( chiave K! )*/! printf("inserire l'elemento da cercare : ");! scanf("%d",&k);!
32 /* scandire gli elementi del vettore partendo dal! primo V[0] e fermandosi se si trova K o se si! finisce l array*/! i=0;! while( K!= V[i] && i<n )! i = i + 1;! /*il risultato della ricerca dipende da quale! condizione di uscita è stata verificata*/! if ( i<n ) printf("elemento trovato in posizione! %d\n", i+1);! else printf("elemento non trovato\n");! }!
33 Ricerca dicotomica 1) Si individua l elemento che sta a metà del vettore; 2) Si confronta la chiave K con tale elemento. Se l elemento individuato non è uguale a quello cercato : se K > elemento mediano la ricerca continua solo nel semivettore superiore se K < elemento mediano la ricerca continua solo nel semivettore inferiore 3) Il procedimento continua suddividendo i semivettori via via individuati. Esempio: trovare 9 Confronto 9 con 6 - ripeti sul vettore Confronta 9 con 9 - trovato
34 Ricerca dicotomica #include <stdio.h>! #define MAXDIM 100! main()! {! int i,inf,sup,med,k,n; int V[MAXDIM];! do{! printf("\n Inserire la dimensione del vettore non! superiore a %d\n",maxdim);! scanf("%d",&n);! }while(n>maxdim);! /* inserimento del vettore ordinato */! for (i=0;i<n;i++)! {! printf("inserire l'elemento %d : ",i+1);! scanf("%d",&v[i]);! }!
35 /* Inserimento del valore da cercare K */! printf("inserire l'elemento da cercare : ");! scanf("%d",&k);! /*inizializzazione degli indici */! inf = 0; sup = N-1; med = (inf + sup)/2;! /*accedi al mediano del vettore a ciascun passo */! while ( K!= V[med] && inf<sup )! {! if ( K > V[med] ) /*vai nella parte alta*/! inf = med+1;! else! sup = med-1; /*vai nella parte bassa*/! med = (inf + sup)/2;! }! /*risultato della ricerca */! if ( V[med]== K )! printf("elemento trovato in posizione %d\n", med+1);! else printf("elemento non trovato\n");! }!
36 Quale preferire? La Ricerca Sequenziale ricerca con successo:nel caso migliore ho un solo confronto e in quello peggiore N Il numero medio di confronti risulta (N+1)/2 ricerca senza successo: L algoritmo esamina sempre tutto il vettore, quindi il numero di confronti è sempre N
37 La Ricerca dicotomica Ad ogni iterazione l'insieme è dimezzato, il numero di confronti è pari a quante volte N può essere diviso per 2 fino a ridurlo a 0. in un vettore di dimensione N = 2h, l algoritmo deve compiere circa h = log2(n) passi (e quindi confronti) per la ricerca senza successo, nel caso medio il numero è leggermente inferiore mentre nel caso migliore è 1. Esempio : per cercare un elemento in un insieme di elementi, nel caso pessimo con la Ricerca Sequenziale dovremmo eseguire circa confronti, mentre con la Ricerca Binaria ne dobbiamo effettuare al massimo 21.
38 Problemi di ordinamento 3 metodi: Selection Insertion Exchange Si parte da array iniziale con i valori disordinati, e si ordina nell array stessa Una passata per ordinare ogni posizione Una passata per cercare il valore da mettere in quella posizione
39 Selection sort Trovo il minimo fra gli N; poi il minimo fra gli N-1; etc e lo metto nella posizione da ordinare #define N 100!.! main ()! {! int i, j, min, temp; int dati[n];! /*acquisisci gli N valori*/!! for (i = 0; i < N-1; i++) {! min = i;! for (j = i+1; j < N; j++) {! /* trovo l indice in cui si trova il minimo */! if(dati[j]<dati[min])! min=j;! temp = dati[i];! dati[i]=dati[min]; /*metto il minimo a posto*/! dati[min]= temp;! }! }!
40 Esempio selection inizio dopo for i= dopo for i = dopo for i= dopo for i = 3
41 Insertion sort..{ int i, j; int dati[n];! }}! for (i = 1; i <N; i++)! for (j = i; j > 0; j--)! if (dati[j]<dati[j-1])! {/*scambia*/;! temp = dati[j-1];! dati[j-1]=dati[j];! dati[j]= temp;!
42 Esempio insertion inizio dopo for i= dopo for i = dopo for i= dopo for i = 3
43 sort Bubble sort su array N passate Confronta un elemento con il successivo Se il primo è minore o uguale, nulla Se maggiore, scambia Repeat esempio: originale: passata 1: passata 2: passata 3: 23467
44 Bubblesort ordinare array a #include <stdio.h>! # define! N 10! main ()! { int pass, j, temp, a[n];! /* lettura di a*/! /* bubblesort a*/! for (pass = 1; pass <N; pass++)! for (j = 0; j <N-1; j++)! if a[j] > a[j+1]! {/* scambio*/! temp = a[j] ; a[j] = a[j+1] ; a[j+1]=temp;! } /* stampa di a*/!.! }
45 esercizi Calcolare la somma dei primi N numeri interi N(N+1)/2 N =1 Somma = 2/2 =1 N=2 Somma = 2(3)/2 = 3 cioè 1+2 Calcolare la somma dei primi N numeri pari N*N+N Es: N = 1 Somma=2 N=2 Somma = 2*2+2 = 6 cioè 2+4
Array Tipi di dato semplici e strutturati strutturati array elementi omogenei numero d ordine indice lunghezza dimensione
Array Tipi di dato semplici e strutturati i tipi di dato visti finora erano tutti semplici: int, char, float,... i dati manipolati sono spesso complessi (o strutturati) con componenti elementari o strutturate
DettagliEsercitazione 6. Array
Esercitazione 6 Array Arrays Array (o tabella o vettore): è una variabile strutturata in cui è possibile memorizzare un numero fissato di valori tutti dello stesso tipo. Esempio int a[6]; /* dichiarazione
DettagliLinguaggio C. tipi di dati definiti dall utente. Università degli Studi di Brescia. Docente: Massimiliano Giacomin
Linguaggio C tipi di dati definiti dall utente Università degli Studi di Brescia Docente: Massimiliano Giacomin Elementi di Informatica e Programmazione Università di Brescia 1 Tipi di dati in C Predefiniti
DettagliErrori frequenti Cicli iterativi Array. Cicli e array. Laboratorio di Programmazione I. Corso di Laurea in Informatica A.A.
Cicli e array Laboratorio di Programmazione I Corso di Laurea in Informatica A.A. 2016/2017 Calendario delle lezioni Lez. 1 Lez. 2 Lez. 3 Lez. 4 Lez. 5 Lez. 6 Lez. 7 Lez. 8 - Introduzione all ambiente
DettagliEsercizi C su array e matrici
Politecnico di Milano Esercizi C su array e matrici Massimo, media e varianza,, ordinamento, ricerca e merge, matrice simmetrica, puntatori Array Array o vettore Composto da una serie di celle int vett[4]
DettagliIstruzioni 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
DettagliProgrammazione I - Laboratorio
Programmazione I - Laboratorio Esercitazione 3 - Array Gianluca Mezzetti 1 Paolo Milazzo 2 1. Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ mezzetti mezzetti di.unipi.it 2. Dipartimento
DettagliFondamenti di Informatica. Algoritmi di Ricerca e di Ordinamento
Fondamenti di Informatica Algoritmi di Ricerca e di Ordinamento 1 Ricerca in una sequenza di elementi Data una sequenza di elementi, occorre verificare se un elemento fa parte della sequenza oppure l elemento
DettagliStrutture dati e loro organizzazione. Gabriella Trucco
Strutture dati e loro organizzazione Gabriella Trucco Introduzione I linguaggi di programmazione di alto livello consentono di far riferimento a posizioni nella memoria principale tramite nomi descrittivi
DettagliARRAY E STRINGHE. ESERCIZIO 2 Scrivere un programma che calcola il numero di doppie e di dittonghi (2 vocali vicine) presenti in una stringa.
3 ITI - a.s. 2007-2008 Compiti di Informatica ESTATE 2008 ARRAY E STRINGHE Scrivere una funzione che carica da tastiera un array di n elementi e lo stampa invertendo il primo elemento con l'ultimo, il
DettagliIntroduzione alla programmazione Algoritmi e diagrammi di flusso. Sviluppo del software
Introduzione alla programmazione Algoritmi e diagrammi di flusso F. Corno, A. Lioy, M. Rebaudengo Sviluppo del software problema idea (soluzione) algoritmo (soluzione formale) programma (traduzione dell
DettagliScrittura formattata - printf
Esercizi su Input/Output con formato FormattedIO 1 Scrittura formattata - printf Funzione printf int printf ( , ) La funzione restituisce un valore intero uguale ai caratteri
Dettagligiapresente( ) leggi( ) char * strstr(char * cs, char * ct) NULL
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
DettagliCorso di Fondamenti di Informatica
Corso di Fondamenti di Informatica Gli algoritmi di base sul tipo array: ordinamento e ricerca Claudio De Stefano - Corso di Fondamenti di Informatica 1 Algoritmi di ordinamento gli algoritmi si differenziano
DettagliEsercitazione 3. Espressioni booleane I comandi if-else e while
Esercitazione 3 Espressioni booleane I comandi if-else e while Esercizio Si consideri la seguente istruzione: if (C1) if (C2) S1; else S2; A quali delle seguenti interpretazioni corrisponde? if (C1) if
DettagliFortran per Ingegneri
Fortran per Ingegneri Lezione 4 A.A. 2014/2015 Marco Redolfi marco.redolfi@unitn.it Simone Zen simone.zen@unitn.it Formati e Formattazione Finora abbiamo letto valori da tastiera e scritto sullo schermo
DettagliESERCIZI DI PROGRAMMAZIONE. - condizionali e cicli -
ESERCIZI DI PROGRAMMAZIONE - condizionali e cicli - Elementi di Informatica e Programmazione Università di Brescia 1 Esercizio 1: dal tema d esame ING-INF del 28 gennaio 2009 Si sviluppi un programma in
DettagliUniversità di Roma Tor Vergata L12-1
Università di Roma Tor Vergata L12-1 soluzione di un problema fl 1) definizione di una rappresentazione 2) specificazione di un algoritmo (dipendente dalla rappresentazione) 3) traduzione in un linguaggio
DettagliESERCIZI DI PROGRAMMAZIONE DA TEMI D ESAME - vettori -
ESERCIZI DI PROGRAMMAZIONE DA TEMI D ESAME - vettori - Elementi di Informatica e Programmazione Università di Brescia 1 Esercizio 1 Sviluppare un programma che acquisisce dall utente al massimo 50 numeri
DettagliLaboratorio di informatica Ingegneria meccanica
Interi in complemento a 2 () Laboratorio di informatica Ingegneria meccanica Lezione 5 29 ottobre 2007 Con N bit sono rappresentabili tutti gli interi nell'intervallo [-2^(N-), 2^(N-)-] Esempio: 6 bit,
DettagliVariabili strutturate
Esempio Ordinamento crescente di numeri: 25 7 I passo: 25 7 25 7 7 25 7 25 Variabili strutturate in due scambi 25 è stato portato al suo posto Gli array II passo: 7 25 7 25 7 25 in uno scambio 7 è stato
DettagliStrutture di Controllo
Introduzione Strutture di Controllo per strutture condizionali e cicliche Quando si affronta la programmazione si devono indicare al computer delle istruzioni da eseguire. Se il computer potesse comprendere
DettagliPolitecnico di Torino Sede di Alessandria Corso di informatica Programmazione in c: introduzione. e mail: sito: users.iol.
Politecnico di Torino Sede di Alessandria Corso di informatica Programmazione in c: introduzione prof. Lorenzo Porcelli e mail: genna18@iol.it sito: users.iol.it/genna18 Risoluzione di un problema Dato
DettagliArray e puntatori in C
Array e puntatori in C Diapositive adattate dalle omonime create dalla Dottoressa di Ricerca Giovanna Melideo per il corso di Laboratorio di Algoritmi e Strutture Dati 10/05/2005 LP2-04/05 - Appunti di
Dettagli18/01/16. Soluzione degli esercizi svolti in aula alla lavagna. Seconda lezione. Cast
Soluzione degli esercizi svolti in aula alla lavagna Seconda lezione Cast 1 Esempio Scriviamo un programma che converte temperature Fahrenheit in temperature Celsius La formula è cels = (fahr 32) * 5 *
DettagliEsercitazione 4. Comandi iterativi for, while, do-while
Esercitazione 4 Comandi iterativi for, while, do-while Comando for for (istr1; cond; istr2) istr3; Le istruzioni vengono eseguite nel seguente ordine: 1) esegui istr1 2) se cond è vera vai al passo 3 altrimenti
DettagliEsercizio 1: Puntatori impiegati che sono manager
Esercitazione Fondamenti di Informatica B Corso di Laurea in Ingegneria Meccanica 10 Esercitazione: 25 gennaio 2006 Esercizi di riepilogo Problema: Esercizio 1: Puntatori impiegati che sono manager Si
DettagliLaboratorio di Informatica
Strutture Dati in C++ Le strutture dati sono entità che permettono di memorizzare dati in modo organizzato e funzionale a particolari esigenze Laboratorio di Informatica 4. Array e strutture in C++ Strutture
DettagliLinguaggio C: le funzioni
Linguaggio C: le funzioni prof. Lorenzo Porcelli e mail: genna18@iol.it sito: http://users.iol.it/genna18 Introduzione attraverso un esempio Problema: Conoscendo le misure di n rettangoli, determinare
DettagliProgrammazione 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
DettagliAlmerico Murli - Le variabili strutturate (array) VARIABILI STRUTTURATE (ARRAY)
VARIABILI STRUTTURATE (ARRAY) 1 successione (di numeri reali): i ℵ a R i vettore (di numeri reali): i I a i R con I ℵ sottoinsieme finito ogni componente del vettore e univocamente determinata dall indice
DettagliFondamenti di Informatica T. Linguaggio C: i puntatori
Linguaggio C: i puntatori Il puntatore E` un tipo di dato, che consente di rappresentare gli indirizzi delle variabili allocate in memoria. Dominio: Il dominio di una variabile di tipo puntatore è un insieme
DettagliArray multidimensionali e stringhe
Andrea Marin Università Ca Foscari Venezia Laurea in Informatica Corso di Programmazione part-time a.a. 2011/2012 Array uni-dimensionali (richiami) Dichiarazione: int vet[100]; float x[50]; Gli elementi
DettagliPROGRAMMAZIONE: Le strutture di controllo
PROGRAMMAZIONE: Le strutture di controllo Prof. Enrico Terrone A. S: 2008/09 Le tre modalità La modalità basilare di esecuzione di un programma è la sequenza: le istruzioni vengono eseguite una dopo l
DettagliRICERCA 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
DettagliIL PRIMO PROGRAMMA IN C
IL PRIMO PROGRAMMA IN C LO SCOPO Si vuole scrivere un programma in linguaggio C che chieda all utente di introdurre da tastiera due numeri interi e visualizzi il valore della loro somma sul video SOLUZIONE
DettagliCorso di Fondamenti di Informatica Tipi strutturati: Strutture typedef Anno Accademico 2008/2009 Francesco Tortorella
Corso di Fondamenti di Informatica Tipi strutturati: Strutture typedef Anno Accademico Francesco Tortorella Le strutture Gli array permettono la sola aggregazione di variabili dello stesso tipo. Quindi
DettagliCaratteri e stringhe
Caratteri e stringhe Caratteri Dato che un computer può memorizzare esclusivamente sequenze di bit, per memorizzare un carattere (e quindi testi) è necessario stabilire una convenzione che associa a un
DettagliLinguaggi di programmazione + laboratorio a.a. 2012/2013
Linguaggi di programmazione + laboratorio a.a. 2012/2013 Scrivere un programma in linguaggio C che legga da tastiera una sequenza di lunghezza ignota a priori di numeri interi positivi. Il programma, a
DettagliLe Strutture di controllo Del Linguaggio C. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni
Le Strutture di controllo Del Linguaggio C Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni STRUTTURE DI CONTROLLO PRIMITIVE SEQUENZA SELEZIONE (o scelta logica) ITERAZIONE NON PRIMITIVE
DettagliPuntatori. Un puntatore contiene un numero che indica la locazione di memoria dove è presente la variabile puntata
Puntatori int i = 10; int * pi = &i; pi i = 10 116 int * pi = pi contiene un informazione che mi permette di accedere ( puntare ) ad una variabile intera Un puntatore contiene un numero che indica la locazione
DettagliTempo di vita e scope delle variabili
Tempo di vita e scope delle variabili Richiami sulla struttura di un programma C Un programma C deve essere contenuto in uno o più file (salvo diversa specifica, per ora si assume tutto in un unico file):
DettagliIntroduzione 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
DettagliFondamenti 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
DettagliEsercizi di programmazione in linguaggio C - Costrutto iterazione
Esercizi di programmazione in linguaggio C - Costrutto iterazione prof. Roberto uligni 1. [potenze1] Scrivere un programma che visualizzi il valore di tutte le prime n potenze di 2 con n richiesto all'utente
DettagliLaboratorio di Informatica Ingegneria Clinica Lezione 14-16/11/2011
Laboratorio di Informatica Ingegneria Clinica Lezione 14-16/11/2011 Raffaele Nicolussi FUB - Fondazione Ugo Bordoni Via del Policlinico, 147 00161 Roma I puntatori Variabili e parametri Parametri formali
DettagliIl linguaggio C. Notate che...
Il linguaggio C Notate che... 1 Il C è un linguaggio a blocchi int main (void) { blocco } 2 Il C è un linguaggio a blocchi (2) Non è possibile mischiare dichiarazioni e comandi! int main (void) { } Dichiarazione
DettagliConsideriamo un vettore allocato dinamicamente
Libreria per per la la gestione/manipolazione dei dei vettori Consideriamo un vettore allocato dinamicamente int * v; v = (int *) malloc (n * sizeof (int) ); Conversione di tipo da void * a int * Numero
DettagliIl TDA Dictionary. Definizione informale. I metodi del TDA Dictionary 1. Applicazioni. I metodi del TDA Dictionary 2. I metodi del TDA Dictionary 3
Il TDA Dictionary Definizione informale Il TDA Dictionary (dizionario) modella una collezione di voci su cui è possibile effettuare delle ricerche Una voce è una coppia (chiave, elemento) Le principali
DettagliEspressione di chiamata di funzione
Avvertenza Quanto segue NON è un libro, ma è una copia dei lucidi usati a lezione che NON sostituisce i libri di testo adottati e consigliati per l insegnamento di Informatica Generale. Questa copia è
DettagliAlgoritmi e basi del C Struttura di un programma
Algoritmi e basi del C Struttura di un programma Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 17 Marzo 2015 Compitini Compitini di INFO: 24 Aprile 2015 4.15pm @ C.G.1 (Ed. 9) 21
DettagliProgrammare in C. Esempio: Algoritmo del Risveglio
MASTER Information Technology Excellence Road (I.T.E.R.) Programmare in C (strutture di controllo) Maurizio Palesi Salvatore Serrano Master ITER Informatica di Base Maurizio Palesi, Salvatore Serrano 1
DettagliPolitecnico di Milano Facoltà di Ingegneria Industriale INFORMATICA B Prima prova in itinere COGNOME E NOME. 13 novembre 2006 RIGA COLONNA MATRICOLA
Politecnico di Milano Facoltà di Ingegneria Industriale INFORMATICA B Prima prova in itinere COGNOME E NOME 13 novembre 2006 RIGA COLONNA MATRICOLA Il presente plico pinzato, composto di sei fogli, deve
DettagliTecniche di Ordinamento dei Vettori
Tecniche di Ordinamento dei Vettori Corso di Laurea Ingegneria Corso B A.A. 2010-2011 1 Contenuto 1) Generalità 2) Metodi a Minimo Ingombro di Memoria 2.1) Ordinamento per selezione ( Selection Sort )
Dettagliin termini informali: un algoritmo è una sequenza ordinata di operazioni che risolve un problema specifico
Click to edit Algoritmo Master title style algoritmo: un insieme ordinato di operazioni non ambigue ed effettivamente computabili che, quando eseguito, produce un risultato e si arresta in un tempo finito
DettagliInformatica 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,
DettagliEsercitazione 8. Array multidimensionali
Esercitazione 8 Array multidimensionali Prodotto di due matrici Una matrice può essere rappresentata in C con un array bidimensionale. Consideriamo il seguente problema: date due matrici mat1[n] [P] mat2[p]
DettagliIstruzioni iterative. Istruzioni iterative
Istruzioni iterative Esempio: Leggere 5 interi, calcolarne la somma e stamparli. Variante non accettabile: 5 variabili, 5 istruzioni di lettura, 5... int i1, i2, i3, i4, i5; scanf("%d", &i1):... scanf("%d",
DettagliCorso di Fondamenti di Programmazione canale E-O. Cos è. un vettore (1) un vettore (2) un vettore (3)
Corso di Fondamenti di Programmazione canale E-O Tiziana Calamoneri Vettori DD Cap. 6, pp. 85-244 Cos è un vettore () Osserva: Una variabile può contenere un solo valore alla volta. Il costruttore di vettore
DettagliEsempio: 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
DettagliArray in Fortran 90. Ing. Luca De Santis. Anno accademico 2006/2007. DIS - Dipartimento di informatica e sistemistica
Array in Fortran 90 Ing. Luca De Santis DIS - Dipartimento di informatica e sistemistica Anno accademico 2006/2007 Fortran 90: array DIS - Dipartimento di informatica e sistemistica 1 / 25 Cosa vedremo
DettagliUnità Didattica 5 Linguaggio C. Stringhe. Accesso a file ASCII. Strutture.
Unità Didattica 5 Linguaggio C Stringhe. Accesso a file ASCII. Strutture. 1 Stringhe Una stringa è una sequenza di caratteri (es: ciao, sd!n29dnqa ); In C non esiste una variabile di tipo stringa; Una
DettagliCorso di Fondamenti di Informatica. Puntatori e Allocazione Dinamica
Corso di Fondamenti di Informatica Puntatori e Allocazione Dinamica I puntatori (Richiamo) Il C++ prevede puntatori a dati di qualsiasi natura, semplici o strutturati e puntatori a funzione. In particolare
DettagliLE STRUTTURE DATI PARTE 2: RECORD. Prof. G. Ciaschetti
1 ISTITUTO DI ISTRUZIONE SUPERIORE ANGIOJ LE STRUTTURE DATI PARTE 2: RECORD Prof. G. Ciaschetti Abbiamo visto nella prima dispensa sulle strutture dati che una struttura dati è una collezione di dati in
DettagliProva di Laboratorio del [ Corso A-B di Programmazione (A.A. 2004/05) Esempio: Media Modalità di consegna:
Prova di Laboratorio del 12.1.2005 [durata 90 min.] Corso A-B di Programmazione (A.A. 2004/05) 1. Leggere da tastiera un insieme di numeri interi ed inserirli in un vettore A 2. Calcolare tramite una funzione
DettagliUNIVERSITÀ DEGLI STUDI DI PAVIA FACOLTÀ DI INGEGNERIA. Matlab: esempi ed esercizi
UNIVERSITÀ DEGLI STUDI DI PAVIA FACOLTÀ DI INGEGNERIA Matlab: esempi ed esercizi Sommario e obiettivi Sommario Esempi di implementazioni Matlab di semplici algoritmi Analisi di codici Matlab Obiettivi
DettagliProgrammazione: variabili e operatori. Variabili
Programmazione: variabili e operatori Variabili Una variabile è un'area di memoria (RAM) individuata da un nome detto identificativo. Tale nome esprime l'indirizzo dove sarà posto il valore che si assegnerà
DettagliPASCAL standard. Il linguaggio PASCAL nasce come evoluzione del linguaggio ALGOL60 (ALGOrithmic Language) nel 1968 ad opera di N. Wirth.
PASCAL standard Il linguaggio PASCAL nasce come evoluzione del linguaggio ALGOL60 (ALGOrithmic Language) nel 1968 ad opera di N. Wirth. Nb: primi linguaggi furono: Fortran, Algol, Ada, Cobol (cfr testo)
DettagliVBA è 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?
Dettagli2. 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
DettagliEsercizio 1: calcolo del massimo di una sequenza (versione 1)
Esercitazione Fondamenti di Informatica B Corso di Laurea in Ingegneria Meccanica 2 Esercitazione: 12 ottobre 2005 Primi esercizi in C Esercizio 1: calcolo del massimo di una sequenza (versione 1) Si legga
DettagliI vettori in C. Vettori. Definizione di vettori in C. int dato[10] ; int. Numero di elementi. Tipo di dato base. Nome del vettore.
I vettori in C Sintassi della definizione Definizione di costanti Operazioni di accesso Vettori Definizione di vettori in C I vettori in C Definizione di vettori in C Definizione di vettori in C Stesse
DettagliProblem 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
DettagliLa 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
DettagliPuntatori. Fondamenti di Programmazione
Puntatori Fondamenti di Programmazione Funzioni utili stdio.h c = getchar(); restituisce un carattere letto da tastiera. Equivale a: scanf( %c, &c); putchar(c); scrive un carattere sullo schermo. Equivale
DettagliI puntatori. Un puntatore è una variabile che contiene l indirizzo di un altra variabile. puntatore
I puntatori Un puntatore è una variabile che contiene l indirizzo di un altra variabile. puntatore...... L operatore & fornisce l indirizzo di un oggetto: p = &c; assegna a p l indirizzo di c, i.e., p
DettagliPrimi passi col linguaggio C
Andrea Marin Università Ca Foscari Venezia Laurea in Informatica Corso di Programmazione part-time a.a. 2011/2012 Come introdurre un linguaggio di programmazione? Obiettivi: Introduciamo una macchina astratta
DettagliProgramma del corso. Elementi di Programmazione. Introduzione agli algoritmi. Rappresentazione delle Informazioni. Architettura del calcolatore
Programma del corso Introduzione agli algoritmi Rappresentazione delle Informazioni Architettura del calcolatore Reti di Calcolatori Elementi di Programmazione Algoritmi e programmi Algoritmo Sequenza
DettagliESAME DI FONDAMENTI DI INFORMATICA I ESAME DI ELEMENTI DI INFORMATICA. 28 Gennaio 1999 PROVA SCRITTA
28 Gennaio 1999 PROVA SCRITTA Esercizio 1 Un elaboratore rappresenta numeri interi in complemento a due su 8 bit e numeri reali in utilizzando un byte per la mantissa normalizzata e un byte per l esponente
DettagliL Allocazione Dinamica della Memoria
L Allocazione Dinamica della Memoria Maurizio Palesi DIIT Università di Catania Viale Andrea Doria 6, 95125 Catania mpalesi@diit.unict.it http://www.diit.unict.it/users/mpalesi Sommario Questo documento
DettagliSULL 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)
DettagliLezione 6 Selection/Insertion Sort su interi e stringhe
Lezione 6 Selection/Insertion Sort su interi e stringhe Rossano Venturini rossano@di.unipi.it Pagina web del corso http://didawiki.cli.di.unipi.it/doku.php/informatica/all-b/start Tutoraggio Venerdì 14
DettagliSommario PREFAZIONE...XI CAPITOLO 1: INTRODUZIONE AI COMPUTER, A INTERNET E AL WEB... 1 CAPITOLO 2: INTRODUZIONE ALLA PROGRAMMAZIONE IN C...
Sommario PREFAZIONE...XI Aggiornamenti e novità... xi Lo scopo di questo libro... xii Diagramma delle dipendenze... xii La metodologia di insegnamento... xiii Panoramica sul libro... xvi Ringraziamenti...
DettagliStringhe e allocazione dinamica della memoria
Stringhe e allocazione dinamica della memoria Esercizio Scrivere un programma strings.c che legge da standard input una sequenza di parole separate da uno o più spazi, e stampa le parole lette, una per
DettagliAppunti di informatica. Lezione 10 anno accademico Mario Verdicchio
Appunti di informatica Lezione 10 anno accademico 2016-2017 Mario Verdicchio Esercizio Scrivere un programma che, data una sequenza di 10 interi (scelta dall utente), la ordini in ordine crescente Soluzione
DettagliEsercitazione 3. Oggi sono stati effettuati semplici esercizi in C utilizzando le seguenti istruzioni: if...else, while, printf, scanf
Riassunto Esercitazione 3 Oggi sono stati effettuati semplici esercizi in C utilizzando le seguenti istruzioni: if...else, while, printf, scanf Sono state introdotte anche le seguenti relazioni: uguaglianza:
DettagliESAME DI FONDAMENTI DI INFORMATICA I ESAME DI ELEMENTI DI INFORMATICA. 21 Gennaio 1998
21 Gennaio 1998 PROVA PRATICA Si scriva un programma C (BASIC per gli studenti di Elementi di Informatica) che: a) Legga da terminale una sequenza di caratteri terminati dal carattere '*' (un carattere
DettagliLaboratorio di Programmazione Appunti sulla lezione 4: Divide et impera e algoritmi di ordinamento
Laboratorio di Programmazione Appunti sulla lezione 4: Divide et impera e algoritmi di ordinamento Alessandra Raffaetà Università Ca Foscari Venezia Corso di Laurea in Informatica Ricerca binaria Assunzione:
DettagliImplementazione di Liste puntate
Laboratorio di Algoritmi e Strutture Dati Aniello Murano http://people.na.infn.it people.na.infn.it/~murano/ 1 Implementazione di Liste puntate 2 1 Indice Liste puntate semplici: Gli elementi sono logicamente
DettagliIntroduzione al C. Tipi derivati
Introduzione al C Tipi derivati 1 Strutture semplici Una struttura è una collezione di una o più variabili, anche di tipi diversi, raggruppate da un nome struct tag{ struttura_elementi } istanza; struct
DettagliAlgoritmi di ordinamento. Algoritmi. Selection sort semplificato - I. Selection sort semplificato - II
Algoritmi Ver..4 Algoritmi di ordinamento Lo scopo è ordinare in senso [de]crescente il contenuto di un vettore di N elementi senza utilizzare un secondo vettore Esiste molta letteratura scientifica a
DettagliUnità Didattica 1 Linguaggio C. Fondamenti. Struttura di un programma.
Unità Didattica 1 Linguaggio C Fondamenti. Struttura di un programma. 1 La storia del Linguaggio C UNIX (1969) - DEC PDP-7 Assembly Language BCPL - un OS facilmente accessibile che fornisce potenti strumenti
DettagliInformatica 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,
DettagliLinguaggio C. Tipi predefiniti. Università degli Studi di Brescia. Prof. Massimiliano Giacomin. Prof. M. Giacomin
Linguaggio C Tipi predefiniti Università degli Studi di Brescia Prof. Massimiliano Giacomin Elementi di Informatica e Programmazione Università di Brescia 1 Il concetto di tipo (reprise) Nome che indica
DettagliCompitino di Laboratorio di Informatica CdL in Matematica 13/11/2007 Teoria Compito A
Matematica 13/11/2007 Teoria Compito A Domanda 1 Descrivere, eventualmente utilizzando uno schema, gli elementi funzionali di una CPU. Domanda 2 Java è un linguaggio compilato o interpretato? Motivare
DettagliInside C : Puntatori. Indirizzo: operatore & p = &v; x = a; Puntatori Referenziazione e Dereferenziazione Arrays
Pointers: Puntatori (I) Le variabili finora incontrate sono caratterizzate da un nome (o identificativo), un tipo, ed occupano un area di memoria di dimensione dipendente dal tipo. Per accedere ad una
DettagliEsercizi. I File ed il C
Politecnico di Milano Esercizi File di testo,, file binari I File ed il C Insieme omogeneo di dati, memorizzato su disco e caratterizzato da un nome La lunghezza di un file non è fissata a priori Astrazione
DettagliINDICI PER FILE. Accesso secondario. Strutture ausiliarie di accesso
INDICI PER FILE Strutture ausiliarie di accesso 2 Accesso secondario Diamo per scontato che esista già un file con una certa organizzazione primaria con dati non ordinati, ordinati o organizzati secondo
DettagliSpazio riservato ai docenti
Politecnico di Milano Facoltà di Ingegneria Industriale INFORMATICA B Prova in itinere del 25 Novembre 2015 COGNOME E NOME RIGA COLONNA MATRICOLA Tema A Spazio riservato ai docenti Il presente plico contiene
Dettagli3. 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