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

Dimensione: px
Iniziare la visualizzazioe della pagina:

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

Transcript

1 1: /* Nome del programma: gestione_articoli_01.cpp 2: Realizzato da: Gaetano Della Cerra 3: Data: 06/02/ III Informatica Serale I.T.I.S. Molinari 4: Il programma gestisce gli articoli di un negozio utilizzando un array 5: struct. E' possibile ricercare un articolo per ognuno dei campi di cui è 6: composta la struct, ovvero per nome, per codice o per prezzo */ 7: 8: #include <iostream> 9: #include <string.h> 10: #include <conio.h> 11: #include <windows.h> 12: 13: using namespace std; 14: 15: #define dim : #define dim : 18: void menu_main(); 19: void intestazione_main(); 20: char scelta_main ( char scelta ); 21: void inserisci ( struct negozio articolo[] ); 22: void menu_ricerca ( struct negozio articolo[] ); 23: void scelta_ricerca ( struct negozio articolo[] ); 24: void imposta_ricerca ( char scelta, struct negozio articolo[] ); 25: int ricerca_codice ( int cod_art, struct negozio articolo[] ); 26: int ricerca_nome ( char nome [], struct negozio articolo[] ); 27: int ricerca_prezzo ( float prezzo, struct negozio articolo[] ); 28: void visualizza_articolo ( struct negozio articolo[], int n_articolo ); 29: void modifica_articolo( struct negozio articolo[], int n_articolo ); 30: void visualizza_articoli ( struct negozio articolo[] ); 31: void colortext ( int color ); 32: 33: struct negozio { // Dichiarazione di un nuovo tipo di variabile struttura: negozio 34: int cod_art; 35: char nome_articolo [ dim20 ]; 36: float prezzo; 37: }; 38: 39: int indice = 0, indice_max = 0; 40: const int BIANCO = 0, BLU = 2; 41: char scelta, continua; 42: 43: int main() 44: { // Dichiarazione dell'array articolo, di tipo negozio, di 10 elementi 45: negozio articolo [dim10]; // con visibilità limitata alla funzione main(). 46: // Ogni funzione che voglia accedere ad articolo dovrà avere 47: char scelta = '0'; // nei suoi parametri l'indirizzo della struttura articolo. 48: system("color 1F"); 49: 50: do 51: { 52: menu_main(); 53: scelta = scelta_main ( scelta ); 54: 55: switch ( scelta ) // Gestione del menù principale 56: { 57: case 'i': 58: inserisci ( articolo ); 59: break; 60: case 'r': 61: menu_ricerca ( articolo ); 62: break; 63: case 'v': 64: visualizza_articoli ( articolo ); 65: break; 66: case 'u': // Uscita 67: continua = '9'; 68: break; 69: default: 70: cout << "\n\n ATTENZIONE! Non hai effettuato una scelta valida!\n\n"; 71: colortext ( BLU ); 72: system("pause"); 73: colortext ( BIANCO ); 74: continua = '0';

2 75: } 76: 77: if ( continua!= '0' ) 78: { 79: cout << "\n\n Confermi uscita? ("; 80: colortext ( BLU ); 81: cout << "s"; 82: colortext ( BIANCO ); 83: cout << "=si): "; 84: continua = scelta_main ( continua ); 85: } 86: 87: } while ( (continua!= 's') && (continua!= 'S') ); 88: } 89: 90: void menu_main() // Stampa del Menù principale 91: { 92: intestazione_main(); 93: cout << "\n\n\n Operazioni Disponibili:\n"; 94: cout << "\n\n\n - ("; 95: colortext ( BLU ); 96: cout << "I"; 97: colortext ( BIANCO ); 98: cout << ") Inserisci articolo\n"; 99: cout << "\n - ("; 100: colortext ( BLU ); 101: cout << "R"; 102: colortext ( BIANCO ); 103: cout << ") Ricerca articolo\n"; 104: cout << "\n - ("; 105: colortext ( BLU ); 106: cout << "V"; 107: colortext ( BIANCO ); 108: cout << ") Visualizza Elenco Articoli\n"; 109: cout << "\n - ("; 110: colortext ( BLU ); 111: cout << "U"; 112: colortext ( BIANCO ); 113: cout << ") Uscita\n"; 114: cout << "\n\n\n Scegli l'operazione che vuoi effettuare: "; 115: continua = '0'; 116: } 117: 118: char scelta_main ( char scelta ) // Gestione della scelta dell'operazione da effettuare 119: { 120: while (! _kbhit() ) sleep(50) ; // Ciclo che attende la pressione di un tasto 121: scelta = getch(); 122: fflush ( stdin ); 123: scelta = tolower ( scelta ); 124: return scelta; 125: } 126: 127: void intestazione_main() // Intestazione schermata 128: { 129: char o = 248; 130: system( "CLS" ); 131: cout << "\n GESTIONE ARTICOLI NEGOZIO (vers. 1.0)\t3" << o << " A Informatica Serale"; 132: cout << "\n\n\t\t\t\t\t\t Gaetano Della Cerra"; 133: } 134: 135: void inserisci ( struct negozio articolo[] ) 136: { 137: intestazione_main(); 138: if ( indice_max == dim10 ) 139: { 140: cout << "\n\n\n\n\n\n\n Raggiunto limite massimo dell'archivio articoli.\n\n\n\n"; 141: cout << "\n\n\n\n\n\n"; 142: colortext ( BLU ); 143: system("pause"); 144: colortext ( BIANCO ); 145: return; 146: } 147: cout << "\n\n\n Inserisci un nuovo articolo: "; 148: cout << "\n\n\n - Nome dell'articolo: ";

3 149: colortext ( BLU ); 150: fflush ( stdin ); 151: cin.getline ( articolo[indice_max].nome_articolo, dim20 ); 152: colortext ( BIANCO ); 153: cout << "\n - Prezzo dell'articolo: "; 154: colortext ( BLU ); 155: cin >> articolo[indice_max].prezzo; 156: colortext ( BIANCO ); 157: cout << "\n - Codice dell'articolo: "; 158: colortext ( BLU ); 159: cin >> articolo[indice_max].cod_art; 160: colortext ( BIANCO ); 161: indice_max ++; 162: continua = '0'; 163: } 164: 165: void menu_ricerca ( struct negozio articolo[] ) // Stampa del Menù ricerca 166: { 167: intestazione_main(); 168: cout << "\n\n\n Ricerca 1 articolo:\n"; 169: cout << "\n\n\n - ("; 170: colortext ( BLU ); 171: cout << "C"; 172: colortext ( BIANCO ); 173: cout << ") Ricerca per Codice\n"; 174: cout << "\n - ("; 175: colortext ( BLU ); 176: cout << "N"; 177: colortext ( BIANCO ); 178: cout << ") Ricerca per Nome\n"; 179: cout << "\n - ("; 180: colortext ( BLU ); 181: cout << "P"; 182: colortext ( BIANCO ); 183: cout << ") Ricerca per Prezzo\n"; 184: cout << "\n\n\n Scegli il tipo di ricerca che vuoi effettuare: "; 185: scelta_ricerca ( articolo ); 186: } 187: 188: void scelta_ricerca( struct negozio articolo[] ) 189: { 190: scelta = scelta_main ( scelta ); 191: 192: switch ( scelta ) // Gestione del menù ricerca 193: { 194: case 'c': 195: imposta_ricerca ( 'c', articolo ); 196: break; 197: case 'n': 198: imposta_ricerca ( 'n', articolo ); 199: break; 200: case 'p': 201: imposta_ricerca ( 'p', articolo ); 202: break; 203: default: 204: break; 205: } 206: } 207: 208: void imposta_ricerca ( char scelta, struct negozio articolo[] ) 209: { 210: int cod_art = 0, n_articolo = 0; 211: char nome_articolo [ dim20 ]; 212: float prezzo = 0; 213: 214: if ( scelta == 'c') // Ricerca per Codice 215: { 216: intestazione_main(); 217: cout << "\n\n\n RICERCA PER CODICE "; 218: cout << "\n\n\n Inserisci il Codice: "; 219: colortext ( BLU ); 220: cin >> cod_art; 221: colortext ( BIANCO ); 222:

4 223: n_articolo = ricerca_codice ( cod_art, articolo ); 224: 225: if ( n_articolo ) // Se è stato trovato un codice 226: { // viene visualizzato il relativo articolo: 227: visualizza_articolo ( articolo, -- n_articolo ); 228: } 229: else // Altrimenti, il codice non esiste: 230: { 231: intestazione_main(); 232: cout << "\n\n\n\n\n Codice prodotto non presente nel magazzino\n\n\n\n\n"; 233: colortext ( BLU ); 234: system("pause"); 235: colortext ( BIANCO ); 236: } 237: } 238: 239: if ( scelta == 'n') // Ricerca per nome 240: { 241: intestazione_main(); 242: cout << "\n\n\n RICERCA PER NOME "; 243: cout << "\n\n\n\n Inserisci il Nome: "; 244: colortext ( BLU ); 245: cin.getline ( nome_articolo, dim20 ); 246: colortext ( BIANCO ); 247: 248: n_articolo = ricerca_nome ( nome_articolo, articolo ); 249: 250: if ( n_articolo ) // Se ha trovato un articolo con il nome richiesto 251: { 252: visualizza_articolo ( articolo, -- n_articolo ); // Visualizza il relativo articolo 253: } 254: else // Altrimenti, il nome non esiste: 255: { 256: intestazione_main(); 257: cout << "\n\n\n\n\n Nome prodotto non presente nel magazzino\n\n\n\n\n"; 258: colortext ( BLU ); 259: system("pause"); 260: colortext ( BIANCO ); 261: } 262: } 263: 264: if ( scelta == 'p') // Ricerca per prezzo 265: { 266: intestazione_main(); 267: cout << "\n\n\n RICERCA PER PREZZO "; 268: cout << "\n\n\n\n Inserisci il Prezzo: "; 269: colortext ( BLU ); 270: cin >> prezzo; 271: colortext ( BIANCO ); 272: 273: n_articolo = ricerca_prezzo ( prezzo, articolo ); 274: 275: if ( n_articolo ) // Se ha trovato un articolo con il prezzo richiesto 276: { 277: visualizza_articolo ( articolo, -- n_articolo ); // Visualizza il relativo articolo 278: } 279: else // Altrimenti, il prezzo non esiste: 280: { 281: intestazione_main(); 282: cout << "\n\n\n\n\n Prezzo-prodotto non presente nel magazzino.\n\n\n\n\n"; 283: colortext ( BLU ); 284: system("pause"); 285: colortext ( BIANCO ); 286: } 287: } 288: } 289: 290: int ricerca_codice ( int cod_art, struct negozio articolo[] ) 291: { 292: register int i; 293: 294: for ( i = 0 ; i <= indice_max ; i ++ ) 295: { 296: if ( cod_art == articolo[i].cod_art )

5 297: { 298: return ++ i; 299: } 300: } 301: return 0; 302: } 303: 304: int ricerca_nome ( char nome [], struct negozio articolo[] ) 305: { 306: register int i; 307: 308: for ( i = 0 ; i <= indice_max ; i ++ ) 309: { 310: if (! strcmp ( nome, articolo[i].nome_articolo ) ) 311: { 312: return ++ i; 313: } 314: } 315: return 0; 316: } 317: 318: int ricerca_prezzo ( float prezzo, struct negozio articolo[] ) 319: { 320: register int i; 321: 322: for ( i = 0 ; i <= indice_max ; i ++ ) 323: { 324: if ( prezzo == articolo[i].prezzo ) 325: { 326: return ++ i; 327: } 328: } 329: return 0; 330: } 331: 332: void visualizza_articolo ( struct negozio articolo[], int n_articolo ) 333: { 334: int nome = 0; 335: 336: intestazione_main(); 337: cout << "\n\n\n\n\n\n"; 338: cout << "\n\n\t Codice\t Nome Articolo\t Prezzo"; 339: cout << "\n\n\t " << articolo[n_articolo].cod_art; 340: cout << "\t " << articolo[n_articolo].nome_articolo; 341: nome = strlen ( articolo[n_articolo].nome_articolo ); 342: if ( nome < 7 ) cout << "\t "; 343: cout << "\t " << articolo[n_articolo].prezzo; 344: cout << "\n\n\n\n\n\n\n"; 345: cout << " ("; 346: colortext ( BLU ); 347: cout << "M"; 348: colortext ( BIANCO ); 349: cout << ") Modifica Articolo o torna al menu' principale"; 350: scelta = scelta_main ( scelta ); 351: if ( scelta == 'm' ) modifica_articolo( articolo, n_articolo); 352: } 353: 354: void modifica_articolo ( struct negozio articolo[], int n_articolo ) 355: { 356: intestazione_main(); 357: cout << "\n\n\n\t MODIFICA ARTICOLO:"; 358: cout << "\n\n\t Codice Articolo attuale: "; 359: cout << articolo[n_articolo].cod_art; 360: cout << "\n\n\t Nuovo Codice Articolo: "; 361: colortext ( BLU ); 362: cin >> articolo[n_articolo].cod_art; 363: colortext ( BIANCO ); 364: cout << "\n\n\t Nome Articolo attuale: "; 365: cout << articolo[n_articolo].nome_articolo; 366: cout << "\n\n\t Nuovo Nome Articolo: "; 367: colortext ( BLU ); 368: fflush ( stdin ); 369: cin.getline ( articolo[n_articolo].nome_articolo, dim20 ); 370: colortext ( BIANCO );

6 371: cout << "\n\n\t Prezzo Articolo attuale: "; 372: cout << articolo[n_articolo].prezzo; 373: cout << "\n\n\t Nuovo Prezzo Articolo: "; 374: colortext ( BLU ); 375: cin >> articolo[n_articolo].prezzo; 376: colortext ( BIANCO ); 377: visualizza_articolo ( articolo, n_articolo ); 378: } 379: 380: void visualizza_articoli ( struct negozio articolo[] ) 381: { 382: register int i; 383: int nome = 0; 384: 385: intestazione_main(); 386: cout << "\n\n\n\t TABELLA ELENCO ARTICOLI:\n"; 387: if (! indice_max ) cout << "\n\n Nessun articolo inserito!"; 388: else cout << "\n\n\t Codice\t Nome Articolo\t Prezzo"; 389: for ( i = 0 ; i < indice_max ; i ++ ) 390: { 391: cout << "\n\n\t " << articolo[i].cod_art; 392: cout << "\t " << articolo[i].nome_articolo; 393: nome = strlen ( articolo[i].nome_articolo ); 394: if ( nome < 7 ) cout << "\t "; 395: cout << "\t " << articolo[i].prezzo; 396: } 397: if ( indice_max < 7 ) 398: for ( ; i < 7 ; i ++ ) 399: { 400: cout << "\n\n"; 401: } 402: colortext ( BLU ); 403: system("pause"); 404: colortext ( BIANCO ); 405: continua = '0'; 406: } 407: 408: void colortext ( int color ) 409: { 410: if ( color == BLU ) 411: { 412: SetConsoleTextAttribute ( GetStdHandle ( STD_OUTPUT_HANDLE ), FOREGROUND_BLUE 413: FOREGROUND_GREEN FOREGROUND_INTENSITY BACKGROUND_BLUE ); 414: } 415: 416: if ( color == BIANCO ) 417: { 418: SetConsoleTextAttribute ( GetStdHandle ( STD_OUTPUT_HANDLE ), FOREGROUND_BLUE 419: FOREGROUND_GREEN FOREGROUND_RED FOREGROUND_INTENSITY BACKGROUND_BLUE ); 420: } 421: }

1: /* Nome del programma: numero_giorni_01.cpp - Data: 03/04/2010 2: Realizzato da: Gaetano Della Cerra - III Informatica Serale I.T.I.S.

1: /* Nome del programma: numero_giorni_01.cpp - Data: 03/04/2010 2: Realizzato da: Gaetano Della Cerra - III Informatica Serale I.T.I.S. 1: /* Nome del programma: numero_giorni_01.cpp - Data: 03/04/2010 2: Realizzato da: Gaetano Della Cerra - III Informatica Serale I.T.I.S. Molinari 3: Il programma calcola il numero di giorni che intercorrono

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

Compito di Fondamenti di Informatica

Compito di Fondamenti di Informatica Compito di Fondamenti di Informatica In un magazzino viene utilizzato un archivio informatico, nel quale vengono memorizzate le informazioni relative ai prodotti contenuti nel magazzino e che ne permette

Dettagli

Laboratorio Informatica Classe 4A Serale Venerdì 18/02/2011. Gruppo. Cognome Riontino Nome Raffaele. Cognome Nome

Laboratorio Informatica Classe 4A Serale Venerdì 18/02/2011. Gruppo. Cognome Riontino Nome Raffaele. Cognome Nome Laboratorio Informatica Classe 4A Serale Venerdì 18/02/2011 Gruppo Cognome Riontino Nome Raffaele Cognome Nome TRACCIA 2 ARGOMENTO: LISTE TEMPO: 4h 1. Utilizzando Typedef definire un nuovo tipo di dato

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

Alfabeto ed elementi lessicali del linguaggio C

Alfabeto ed elementi lessicali del linguaggio C Programmazione M-Z Ingegneria e Scienze Informatiche - Cesena A.A. 2015-2016 Alfabeto ed elementi lessicali del linguaggio C Pietro Di Lena - pietro.dilena@unibo.it s t a t i c s h o r t l e g s ; i n

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

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

Algoritmi su array / 2

Algoritmi su array / 2 Corso di Informatica Algoritmi su array / Anno Accademico / Francesco Tortorella Algoritmi su array Operazioni tipiche sugli array: inizializzazione lettura stampa ricerca del minimo e del massimo ricerca

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

Corso di Fondamenti di Informatica Algoritmi su array / 2

Corso di Fondamenti di Informatica Algoritmi su array / 2 Corso di Fondamenti di Informatica Algoritmi su array / Anno Accademico 00/009 Francesco Tortorella Algoritmi su array Operazioni tipiche sugli array: inizializzazione lettura stampa ricerca del minimo

Dettagli

Laboratorio di Algoritmi e Strutture Dati

Laboratorio di Algoritmi e Strutture Dati Realizzazione di Liste Laboratorio di Algoritmi e Strutture Dati Domenico Redavid redavid@di.uniba.it Materiale di base gentilmente concesso dal dott. Nicola Di Mauro Ricercatore presso l'univ. di Bari

Dettagli

Codifica: dal diagramma a blocchi al linguaggio C++

Codifica: dal diagramma a blocchi al linguaggio C++ Codifica: dal diagramma a blocchi al linguaggio C++ E necessario chiarire inizialmente alcuni concetti. La compilazione Il dispositivo del computer addetto all esecuzione dei programmi è la CPU La CPU

Dettagli

Programmazione I / Informatica generale Prova scritta 11 Giugno 2008

Programmazione I / Informatica generale Prova scritta 11 Giugno 2008 Programmazione I / Informatica generale Prova scritta 11 Giugno 2008 NOTA: Si trascuri ogni problema legato al tipo ed al valore di ritorno della funzione main. Inoltre, nei programmi è da sottintendere

Dettagli

Preparati per il compito in classe Modulo 5

Preparati per il compito in classe Modulo 5 Preparati per il compito in classe Modulo 5 Hai i dati relativi a una serie di N (con N < 20) cinema, per ogni cinema si conoscono il nome e l incasso. Scrivi un programma che, presi in input tali dati,

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

struct costobiglietto { //struttura per prezzo float prezzo; float tasse; float prezzototale; };

struct costobiglietto { //struttura per prezzo float prezzo; float tasse; float prezzototale; }; /* Programma 12cppEse1.cpp Autore : Riontino Raffaele 4 informatici ITIS Molinari - Milano corso serale 2/11/2010 Testo : Si vuole realizzare un tipo struct, utilizzato per informazioni su biglietti per

Dettagli

Introduzione alla programmazione in C

Introduzione alla programmazione in C Introduzione alla programmazione in C Testi Consigliati: A. Kelley & I. Pohl C didattica e programmazione B.W. Kernighan & D. M. Ritchie Linguaggio C P. Tosoratti Introduzione all informatica Materiale

Dettagli

Ricerca sequenziale di un elemento in un vettore

Ricerca sequenziale di un elemento in un vettore Ricerca sequenziale di un elemento in un vettore La ricerca sequenziale o lineare è utilizzata per ricercare i dati in un vettore NON ordinato. L algoritmo di ricerca sequenziale utilizza quan non ha alcuna

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

La struttura dati ad albero binario

La struttura dati ad albero binario La struttura dati ad albero binario L albero è una struttura dati nella quale le informazioni sono organizzate in modo gerarchico, dall alto verso il basso. Gli elementi di un albero si chiamano nodi,

Dettagli

INFORMATICA - I puntatori Roberta Gerboni

INFORMATICA - I puntatori Roberta Gerboni 1 2 I puntatori in C++ Il puntatore un tipo di dato scalare, che consente di rappresentare gli indirizzi delle variabili allocate in memoria. Dominio: Il dominio di una variabile di tipo puntatore è un

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

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

void funzioneprova() { int x=2; cout<<"dentro la funzione x="<<x<<endl; }

void funzioneprova() { int x=2; cout<<dentro la funzione x=<<x<<endl; } FUNZIONI 57. Cosa servono le funzioni? A spezzare il programma in diverse parti relativamente indipendenti fra loro, ovvero interagenti sono attraverso i parametri di input ed IL VALORE di uscita. In questo

Dettagli

Corso di Fondamenti di Informatica

Corso di Fondamenti di Informatica Corso di Fondamenti di Informatica Introduzione alla programmazione in C++ 1 Un introduzione Che cosa è il C++? La programmazione procedurale La programmazione orientata agli oggetti La programmazione

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

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

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

Prova Scritta del 19/07/10

Prova Scritta del 19/07/10 Avvertenze Usare ESCLUSIVAMENTE penne ad inchiostro nero o blu (NO MATITE). Consegnare solo fogli formato A4 scritti da un solo lato. In testa a ciascun foglio scrivere: cognome, nome, numero progressivo

Dettagli

Le Liste. Elisa Marengo. Università degli Studi di Torino Dipartimento di Informatica. Elisa Marengo (UNITO) Le Liste 1 / 31

Le Liste. Elisa Marengo. Università degli Studi di Torino Dipartimento di Informatica. Elisa Marengo (UNITO) Le Liste 1 / 31 Le Liste Elisa Marengo Università degli Studi di Torino Dipartimento di Informatica Elisa Marengo (UNITO) Le Liste 1 / 31 Cos è una Lista Una lista è una collezione di elementi omogenei che: potrebbero

Dettagli

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 2

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 2 Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 2 Dispensa 10 Strutture collegate - 2 A. Miola Febbraio 2008 http://www.dia.uniroma3.it/~java/fondinf2/ Strutture collegate - 2 1 Contenuti!Strutture

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

obiettivi di questa seconda metà del corso fare un passo avanti rispetto a :... meccanismi di composizione dei dati

obiettivi di questa seconda metà del corso fare un passo avanti rispetto a :... meccanismi di composizione dei dati obiettivi di questa seconda metà del corso fare un passo avanti rispetto a :... meccanismi di composizione dei dati puntatori ( strutture dinamiche collegate) strutture dinamiche collegate (liste, pile,

Dettagli

Sottoprogrammi: astrazione procedurale

Sottoprogrammi: astrazione procedurale Sottoprogrammi: astrazione procedurale Incapsulamento di un segmento di programma presente = false; j = 0; while ( (j

Dettagli

Classe Squadra. #include <iostream> using namespace std;

Classe Squadra. #include <iostream> using namespace std; Classe Squadra Si vuole scrivere un programma che gestisce la classifica di un campionato tra squadre di calcio, ognuna identificata dal proprio nome. Il programma deve essere in grado di assegnare un

Dettagli

Aggiornamento : 21/11/2010 semplificate le funzioni per il calcolo delle medie.

Aggiornamento : 21/11/2010 semplificate le funzioni per il calcolo delle medie. /* Programma : cpp_medie_statistiche1.1.cpp Autore : Riontino Raffaele 4 informatici corso serale ITIS Molinari - Milano 8/11/2010 Funzionalità : programma che calcola le medie statistiche semplici e ponderate.

Dettagli

Utilizzo e scrittura di classi

Utilizzo e scrittura di classi Utilizzo e scrittura di classi Corso di Programmazione 3 - Ingegneria dell Informazione e dell Organizzazione 14 novembre, 2001 Gino Perna Implementazione di classi in C++ UN ESEMPIO DI CLASSE: RISULTATI

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

Sistemi Operativi (M. Cesati)

Sistemi Operativi (M. Cesati) Sistemi Operativi (M. Cesati) Compito scritto del 16 luglio 2015 Nome: Matricola: Corso di laurea: Cognome: Crediti da conseguire: 5 6 9 Scrivere i dati richiesti in stampatello. Al termine consegnare

Dettagli

Gli array. Gli array. Gli array. Classi di memorizzazione per array. Inizializzazione esplicita degli array. Array e puntatori

Gli array. Gli array. Gli array. Classi di memorizzazione per array. Inizializzazione esplicita degli array. Array e puntatori Gli array Array e puntatori Laboratorio di Informatica I un array è un insieme di elementi (valori) avente le seguenti caratteristiche: - un array è ordinato: agli elementi dell array è assegnato un ordine

Dettagli

Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a. 2010-11 13 settembre 2011

Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a. 2010-11 13 settembre 2011 Cognome Nome Matricola Postazione PC Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a. 2010-11 13 settembre 2011 Testo Il database di un videonoleggio è costituito da due vettori paralleli.

Dettagli

MANUALEDIUTILIZZO MODULO CONTABILITA FACILE

MANUALEDIUTILIZZO MODULO CONTABILITA FACILE MANUALEDIUTILIZZO MODULO CONTABILITA FACILE INDICE INTRODUZIONE TABELLE CONVERSIONI MOSAICOX > CONTABILITA FACILE SINCRONIZZAZIONE DOCUMENTI Testata documento Dettaglio documento AVVIO SINCRONIZZAZIONE

Dettagli

Università degli Studi di Cassino Corso di Fondamenti di Informatica Puntatori. Anno Accademico 2010/2011 Francesco Tortorella

Università degli Studi di Cassino Corso di Fondamenti di Informatica Puntatori. Anno Accademico 2010/2011 Francesco Tortorella Corso di Informatica Puntatori Anno Accademico 2010/2011 Francesco Tortorella Variabili, registri ed indirizzi Abbiamo visto che la definizione di una variabile implica l allocazione (da parte del compilatore)

Dettagli

Prova Scritta del 20/09/10

Prova Scritta del 20/09/10 Avvertenze Usare ESCLUSIVAMENTE penne ad inchiostro nero o blu (NO MATITE). Consegnare solo fogli formato A4 scritti da solo da un lato se si vogliono avere le fotocopie del compito. In testa a ciascun

Dettagli

Introduzione a ROOT. 1. Informazioni generali

Introduzione a ROOT. 1. Informazioni generali Introduzione a ROOT 1. Informazioni generali ROOT è un ambiente visualizzazione e trattamento dati interattivo sviluppato al CERN (si veda il sito ufficiale http://root.cern.ch interamente sviluppato in

Dettagli

Corso di Programmazione ad oggetti

Corso di Programmazione ad oggetti Corso di Programmazione ad oggetti Il sistema di I/O del C++ a.a. 2008/2009 Claudio De Stefano 1 Il Modello di Von Neumann Il Modello di Von Neumann prevede che la CPU carichi in maniera sequenziale i

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

costruttori e distruttori

costruttori e distruttori costruttori e distruttori Costruttore E un metodo che ha lo stesso nome della classe a cui appartiene: serve per inizializzare un oggetto all atto della sua creazione Ce ne possono essere uno, più di uno,

Dettagli

FUNZIONALITA AREA RISERVATA - Prenotazione Ricoveri, visite e esami in convenzione

FUNZIONALITA AREA RISERVATA - Prenotazione Ricoveri, visite e esami in convenzione FUNZIONALITA AREA RISERVATA - Prenotazione Ricoveri, visite e esami in convenzione 1 Introduzione L applicativo Claim Iscritto è un applicativo dato all utente per la gestione della propria polizza sanitaria

Dettagli

Algoritmo di ordinamento per sostituzione. Esempio : dato l array :

Algoritmo di ordinamento per sostituzione. Esempio : dato l array : Algoritmo di ordinamento per sostituzione Per ottenere un ordinamento crescente con l algoritmo di ordinamento per Sostituzione si confronta l elemento nella prima posizione con gli elementi nelle posizioni

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

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

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

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

Informatica Medica C++ Informatica Medica I semestre Docenti: Fabio Solari e Manuela Chessa. Sviluppo di un applicazione eseguibile

Informatica Medica C++ Informatica Medica I semestre Docenti: Fabio Solari e Manuela Chessa. Sviluppo di un applicazione eseguibile Corso di Laurea in Ingegneria Biomedica Informatica Medica I semestre Docenti: Fabio Solari e Manuela Chessa Prof. Fabio Solari: fabio.solari@unige.it (010-3532059) Prof. Manuela Chessa: manuela.chessa@unige.it

Dettagli

Strutture dati e realizzazione in C. Componenti software:

Strutture dati e realizzazione in C. Componenti software: Strutture dati e realizzazione in C Strutture dati: Termine usato per indicare tipi con elementi del dominio compositi, ad esempio: vettori e matrici; tavole; liste; insiemi; pile e code; alberi e grafi.

Dettagli

Laboratorio di Programmazione Gruppo III, Ml-ZZ. Alberto Finzi finzi@na.infn.it

Laboratorio di Programmazione Gruppo III, Ml-ZZ. Alberto Finzi finzi@na.infn.it Laboratorio di Programmazione Gruppo III, Ml-ZZ Alberto Finzi finzi@na.infn.it Record e File binari Record La definizione della struttura è data dalla parola riservata struct seguita da un identificatore,

Dettagli

Corso di Laboratorio 2 Programmazione C++ Silvia Arcelli. 20 Ottobre 2014

Corso di Laboratorio 2 Programmazione C++ Silvia Arcelli. 20 Ottobre 2014 Corso di Laboratorio 2 Programmazione C++ Silvia Arcelli 20 Ottobre 2014 1 Tipi non Predefiniti Abbiamo visto: Tipi elementari (int, float, char,...) Tipi composti (arrays e tipi non predefiniti) C++ permette

Dettagli

Le operazioni di allocazione e deallocazione sono a carico del sistema.

Le operazioni di allocazione e deallocazione sono a carico del sistema. Allocazione della memoria In C++ è possibile creare (allocare) variabili in maniera statica o dinamica. Nell allocazione statica una variabile esiste ed è utilizzabile dal momento della sua dichiarazione

Dettagli

BREVE INTRODUZIONE ALLA PROGRAMMAZIONE IN C++ E MATHEMATICA

BREVE INTRODUZIONE ALLA PROGRAMMAZIONE IN C++ E MATHEMATICA BREVE INTRODUZIONE ALLA PROGRAMMAZIONE IN C++ E MATHEMATICA 1 LA PROGRAMMAZIONE STRUTTURATA Regole formali per la costruzione del software Metodo di astrazione suddivisione del programma in parti logiche

Dettagli

Nel seguito, istruzione1 e istruzione2 possono essere un blocco di codice { }, cioè più istruzioni

Nel seguito, istruzione1 e istruzione2 possono essere un blocco di codice { }, cioè più istruzioni INTRODUZIONE A C++ Nel seguito, istruzione1 e istruzione2 possono essere un blocco di codice, cioè più istruzioni Istruzione - Esempi Significato int a; float f; double d; char c; int x=0; variabile =

Dettagli

http://www.programmiamo.altervista.org/c/oop/o...

http://www.programmiamo.altervista.org/c/oop/o... PROGRAMMIAMO Programma per la gestione di un conto corrente C++ - Costruttore e distruttore C++ Home Contatti Supponiamo ora di voler scrivere un programma a menu per la gestione di un conto corrente bancario.

Dettagli

Esercizi della lezione 5 di Java

Esercizi della lezione 5 di Java Esercizi della lezione 5 di Java Esercizio 5 Create il tipo di dato Counter dell Esercizio 1 come sottoclasse del tipo di dato SimpleCounter. Esercizio 1 Create un tipo di dato Counter che abbia: un valore

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

Corso di Informatica Corso di Laurea in Ingegneria Gestionale a.a. 2005-06 Secondo Compitino 17 Dicembre 2005

Corso di Informatica Corso di Laurea in Ingegneria Gestionale a.a. 2005-06 Secondo Compitino 17 Dicembre 2005 Studente (Cognome Nome): Matricola: Corso di Informatica Corso di Laurea in Ingegneria Gestionale a.a. 2005-06 Secondo Compitino 17 Dicembre 2005 Si noti che le soluzioni ai quesiti saranno considerate

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

Laboratorio di Algoritmi e Strutture Dati

Laboratorio di Algoritmi e Strutture Dati Laboratorio di Algoritmi e Strutture Dati Prof. Aniello Murano Implementazioni di Liste Doppiamente Puntate e Circolari Corso di Laurea Codice insegnamento Email docente Anno accademico Informatica 13917

Dettagli

PROGRAMMI LINGUAGGIO C

PROGRAMMI LINGUAGGIO C PROGRAMMI IN LINGUAGGIO C Corso di Programmazione Modulo B Prof. GIULIANO LACCETTI Studentessa Bellino Virginia Matr. 408466 Corso di Diploma in Informatica http://www.dicecca.net Indice 1. Package per

Dettagli

Guida Operativa. ArchiviaOL

Guida Operativa. ArchiviaOL Guida Operativa ArchiviaOL I ArchiviaOL Indice 0 Part I Introduzione 3 Part II Gestione utenze 5 Part III Modalità di accesso all'applicativo 7 1 Autenticazione... da programmi fiscali e gestionali 7 2

Dettagli

Corso di Fondamenti di Informatica

Corso di Fondamenti di Informatica Corso di Fondamenti di Informatica I tipi strutturati: gli array e le strutture Claudio De Stefano - Corso di Fondamenti di Informatica 1 arrays un array (o vettore) è una sequenza di oggetti dello stesso

Dettagli

Corso Programmazione 1 Capitolo 01: Concetti Elementari

Corso Programmazione 1 Capitolo 01: Concetti Elementari Corso Programmazione 1 Capitolo 01: Concetti Elementari Docente: Roberto Sebastiani - roberto.sebastiani@unitn.it Esercitatori: Mario Passamani - mario.passamani@unitn.it Alessandro Tomasi - alessandro.tomasi@unitn.it

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

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

Laboratorio di Algoritmi e Strutture Dati

Laboratorio di Algoritmi e Strutture Dati Laboratorio di Algoritmi e Strutture Dati Aniello Murano http://people.na.infn.it people.na.infn.it/~murano/ 1 Operazioni su Liste Doppie e Circolari 2 1 Indice Liste puntate semplici: Gli elementi sono

Dettagli

void concatenastringhe (char st1[], char st2[], char stout[]) { int n=0,s=0; // dichiarazione variabili con inizializzazioni

void concatenastringhe (char st1[], char st2[], char stout[]) { int n=0,s=0; // dichiarazione variabili con inizializzazioni // funzione che concatena due stringhe void concatenastringhe (char st1[], char st2[], char stout[]) int n=0,s=0; // dichiarazione variabili con inizializzazioni while (st1[n] = '\0') stout[n++] = st1[n];

Dettagli

GUIDA. VI.BE.MAC. Negozio Online

GUIDA. VI.BE.MAC. Negozio Online GUIDA VI.BE.MAC. Negozio Online Questa guida spiega come utilizzare il negozio on-line con lo scopo di richiedere un offerta per l acquisto di parti di ricambio. INDICE Accedere al NEGOZIO ON-LINE Scelta

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

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

BOZZA. cin per la comunicazione dal dispositivo di input standard, la tastiera, al programma (stream di input standard)

BOZZA. cin per la comunicazione dal dispositivo di input standard, la tastiera, al programma (stream di input standard) Capitolo 6 Input/output su file BOZZA 6.1 Stream e file L input/output in C ++, in particolare quello su file, avviene tramite stream. stream. Uno stream è un astrazione di un canale di comunicazione,

Dettagli

8 Portafoglio. La sezione consente di creare portafogli simulati, valorizzati automaticamente in tempo reale. In questa sezione, l utente può:

8 Portafoglio. La sezione consente di creare portafogli simulati, valorizzati automaticamente in tempo reale. In questa sezione, l utente può: 8 Portafoglio La sezione consente di creare portafogli simulati, valorizzati automaticamente in tempo reale. Figura 27: Pagina d apertura In questa sezione, l utente può: A. Creare nuovi portafogli; B.

Dettagli

Manuale Operativo Libera Professione Prenotazione/Fatturazione

Manuale Operativo Libera Professione Prenotazione/Fatturazione Manuale Operativo Libera Professione Prenotazione/Fatturazione Rev. 1.1 del 24-01-2014 1. Accesso all applicativo 1.1. da computer non connessi alla rete aziendale (AUSL) 1.1.1. apro Internet Explorer

Dettagli

Guida per l'utilizzo dell'applicazione web rel. 1.0.0

Guida per l'utilizzo dell'applicazione web rel. 1.0.0 Guida per l'utilizzo dell'applicazione web rel. 1.0.0 INDICE 1. INTRODUZIONE...2 2. RICERCA PERSONE...3 2.1 Input della Ricerca Persone...3 2.2 Output della Ricerca Persone: Anagrafica Persona...4 2.3

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

1.1 of :05:39

1.1 of :05:39 /home/mgm/mydropbox/dropbox/peano/libri Peano/INFO3/es78/main.cpp 1 #include "mylib.h" 2 3 int main() { 4 unsigned short code[dim]; 5 bool book; 6 7 // carico il codice a barre 8 LoadCode(code); 9 // calcolo

Dettagli

Manuale d uso per la raccolta: Sicurezza degli impianti di utenza a gas - Postcontatore

Manuale d uso per la raccolta: Sicurezza degli impianti di utenza a gas - Postcontatore Manuale d uso per la raccolta: Sicurezza degli impianti di utenza a gas - Postcontatore 1. Obbligo di comunicazione dei dati... 2 2. Accesso alla raccolta... 2 3. Compilazione... 6 2.1 Dati generali Sicurezza

Dettagli

Corso di Fondamenti di Informatica Tipi strutturati: Stringhe

Corso di Fondamenti di Informatica Tipi strutturati: Stringhe Corso di Fondamenti di Informatica Tipi strutturati: Stringhe Anno Accademico Francesco Tortorella Stringhe di caratteri La stringa è il tipo strutturato con cui vengono rappresentati gruppi di caratteri

Dettagli

Realizzazione di Politiche di Gestione delle Risorse: i Semafori Privati

Realizzazione di Politiche di Gestione delle Risorse: i Semafori Privati Realizzazione di Politiche di Gestione delle Risorse: i Semafori Privati Condizione di sincronizzazione Qualora si voglia realizzare una determinata politica di gestione delle risorse,la decisione se ad

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

Corso di Fondamenti di Informatica. Puntatori e Allocazione Dinamica

Corso 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

Dettagli

Esame di Informatica Generale 9 CFU 21 Giugno 2011 Professori: Carulli, Fiorino, Mazzei

Esame di Informatica Generale 9 CFU 21 Giugno 2011 Professori: Carulli, Fiorino, Mazzei 04-21-giugno-2011-DomandeConSoluzione.doc 1/12 22/06/2011 15:07:59 Esame di Informatica Generale 9 CFU 21 Giugno 2011 Professori: Carulli, Fiorino, Mazzei Docente Risultati Scritto Orali Carulli Venerdì

Dettagli

Tipi strutturati - struct

Tipi strutturati - struct Fondamenti di Programmazione A Appunti per le lezioni Gianfranco Rossi Tipi strutturati - struct Struttura dati (concreta) struct: sequenza di n elementi (n 0), rispettivamente di tipo t1,,tn (non necessariamente

Dettagli

Concetto di Funzione e Procedura METODI in Java

Concetto di Funzione e Procedura METODI in Java Fondamenti di Informatica Concetto di Funzione e Procedura METODI in Java Fondamenti di Informatica - D. Talia - UNICAL 1 Metodi e Sottoprogrammi Mentre in Java tramite le classi e gli oggetti è possibile

Dettagli

Algebra di Boole: Concetti di base. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica

Algebra di Boole: Concetti di base. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica Fondamenti di Informatica Algebra di Boole: Concetti di base Fondamenti di Informatica - D. Talia - UNICAL 1 Algebra di Boole E un algebra basata su tre operazioni logiche OR AND NOT Ed operandi che possono

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

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

Università degli Studi di Cassino Corso di Fondamenti di Informatica Tipi strutturati: Stringhe. Anno Accademico 2010/2011 Francesco Tortorella

Università degli Studi di Cassino Corso di Fondamenti di Informatica Tipi strutturati: Stringhe. Anno Accademico 2010/2011 Francesco Tortorella Corso di Informatica Tipi strutturati: Stringhe Anno Accademico 2010/2011 Francesco Tortorella Stringhe di caratteri La stringa è il tipo strutturato con cui vengono rappresentati gruppi di caratteri quali

Dettagli

File di testo e file binari Directory

File di testo e file binari Directory File di testo e file binari Directory Dove salvare i file perché vengano ritrovati dal programma? CASO 1 Programma eseguito da ambiente di lavoro (MS Visual C++). La directory in cui viene creato/letto

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