Dati strutturati A. Ferrari.

Slides:



Advertisements
Presentazioni simili
Programmazione ad oggetti
Advertisements

C++ Di Marco Cozzani.
INFORMATICA Tipi strutturati
LINGUAGGIO DI PROGRAMMAZIONE C
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Array, matrici Marco D. Santambrogio – Ver. aggiornata al 21 Marzo 2013.
Indicizzazione Estrazione dellelemento sulla prima riga e terza colonna della prima matrice > z[1,3,1] [1] 5 Estrazione di tutti gli elementi della seconda.
String c++.
Unità G3 Algoritmi notevoli. Ordinamento Un insieme di dati {a0, a1, a2, …, an} si dice ordinato in ordine crescente se a0 a1 a2 a3 … an I dati sono generalmente.
Stringhe di caratteri In linguaggio C.
Algoritmi notevoli.
Strutture dati In linguaggio C. Strutture Spesso gli algoritmi lavorano su insiemi di dati eterogenei Per esempio, per descrivere le caratteristiche di.
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità G1 Dati strutturati.
Ripasso R1 Dati strutturati.
Array multidimensionali
Algoritmi notevoli In linguaggio C.
Dati strutturati C++.
Array (vettori) In linguaggio C / C++.
Selezione - approfondimento
Universita di Camerino
Informatica Generale Marzia Buscemi
1 Informatica Generale Susanna Pelagatti Ricevimento: Mercoledì ore presso Dipartimento di Informatica, Via Buonarroti,
Un nuovo tipo di dati Gli array.
Anno accademico Array e puntatori in C.
Algoritmi in C++ (1) da completare
Fondamenti di Informatica II Ingegneria Informatica / Automatica (A-I) Meccanica Prof. M.T. PAZIENZA a.a – 3° ciclo.
Fondamenti di Informatica II Ingegneria Informatica (A-I) Prof. M.T. PAZIENZA a.a – 3° ciclo.
Process synchronization
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Array Anno Accademico 2009/2010.
1 Corso di Informatica (Programmazione) Lezione 13 (21 novembre 2008) Programmazione in Java: stringhe e array.
Array Un array è una collezione in sequenza di variabili del medesimo tipo Riferimento con un nome comune Nome_studente1 Nome_studente2. Nome_studenteN.
Il linguaggio Fortran 90: 2. Istruzioni di Controllo
Array Struttura numerate di dati. Memorizzare molti dati In informatica cè spesso bisogno di memorizzare ed elaborare un insieme costituito da molti dati.
Politecnico di Milano Esercizi Preparazione alla prima prova intermedia.
Dichiarazioni e tipi predefiniti nel linguaggio C
Il Linguaggio C.
Le funzioni.
TIPI DI DATO Un tipo di dato T è definito come: un dominio di valori, D un insieme di funzioni F 1,..,F n sul dominio D un insieme di predicati P 1,..,P.
Biologia Computazionale - Algoritmi
Sistemi e Tecnologie Informatiche
2000 Prentice Hall, Inc. All rights reserved. Capitolo 6 (Deitel) I vettori Sommario Introduzione Vettori Dichiarazione di vettori 6.4.
PROBLEMA ALGORITMO PROGRAMMA LINGUAGGI di PROGRAMMAZIONE
ISTITUTO STATALE DI ISTRUZIONE SUPERIORE F. ENRIQUES CORSO JAVA – PROVA INTERMEDIA DEL 12 MARZO 2007 NOME: COGNOME: ________________________________________________________________________________.
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Array e stringhe Marco D. Santambrogio – Ver. aggiornata al 9 Agosto 2013.
IL MASSIMO DI UN ARRAY ESERCIZIO
Fopndamenti di programmazione. 2 La classe String Una stringa è una sequenza di caratteri La classe String è utilizzata per memorizzare caratteri La classe.
ISTITUTO STATALE DI ISTRUZIONE SUPERIORE F. ENRIQUES CORSO JAVA – PROVA INTERMEDIA DEL 12 MARZO 2007 NOME: COGNOME: ________________________________________________________________________________.
Ricerca sequenziale in un array di interi
Strutture dati elementari
GLI ARRAY MONODIMENSIONALI. Utilizzando le nostre attuali conoscenze, proviamo a risolvere il seguente problema: Calcolare la media dei voti conseguiti.
Fondamenti di Informatica II Ingegneria Informatica / Automatica (A-I) Meccanica Prof. M.T. PAZIENZA a.a – 3° ciclo.
Vettori (a una dimensione)
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Puntatori Marco D. Santambrogio – Ver. aggiornata al 11 Ottobre 2014.
Università di Torino – Facoltà di Scienze MFN Corso di Studi in Informatica Programmazione I - corso B a.a prof. Viviana Bono Blocco 7 – Array.
Fondamenti di Informatica 2 Ingegneria Informatica Docente: Giovanni Macchia a.a
Fondamenti di Informatica II Ingegneria Informatica (A-I) Prof. M.T. PAZIENZA a.a – 3° ciclo.
1 Il linguaggio C Puntatori e dintorni. 2 Puntatori : idea di base In C è possibile conoscere e denotare l’indirizzo della cella di memoria in cui è memorizzata.
Tecnologie Informatiche ed Elettroniche per le Produzioni Animali
© Piero Demichelis Tipi strutturati I tipi considerati finora hanno la caratteristica comune di non essere strutturati: ogni elemento è una singola entità.
13 ottobre Decisioni F. Bombi 13 ottobre 2002.
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Array e “stringhe” Marco D. Santambrogio – Ver. aggiornata al 8 Aprile 2015.
Array (visita e ricerca) CORDA – Informatica A. Ferrari.
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Array e “stringhe” Marco D. Santambrogio – Ver. aggiornata al 26 Marzo 2014.
1 Il linguaggio C Precisazioni sull’esperienza in laboratorio.
Sommario Oggetti immutabili e non Tipi Primitivi: String, Arrays.
1 Informatica Generale Marzia Buscemi Ricevimento: Giovedì ore , Dipartimento di Informatica, stanza 306-PS o per posta.
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Array e “stringhe” Marco D. Santambrogio – Ver. aggiornata al 14 Marzo 204.
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Array e “stringhe” Marco D. Santambrogio – Ver. aggiornata al 28 Ottobre 2014.
“ Pseudocodice ” Un programma per computer lavorerà su in insieme di “ variabili ” contenenti i dati del problema, soluzioni intermedie, soluzioni finali.
Basi di Java Strutture base di Java. Basi di java ▪Variabili ▪Operatori ▪Condizioni e Cicli ▪Array.
Array (vettori) In linguaggio C / C++.
Transcript della presentazione:

Dati strutturati A. Ferrari

Aggregazione di dati omogenei: array Spesso gli algoritmi lavorano su insiemi di dati omogenei. l’insieme dei valori reali che rappresentano le temperature medie delle capitali europee di un giorno dell’anno; i caratteri che rappresentano le note degli accordi di una canzone nel formato anglosassone; i valori interi che rappresentano i voti ottenuti dagli studenti di una classe in una prova di esame. Per risolvere problemi che trattano dati di questo tipo si dovrebbero utilizzare tante variabili dello stesso tipo (int, double o float, char) quanti sono gli elementi dell’insieme d’interesse.

Esempio Per i voti ottenuti dagli studenti potremmo utilizzare le variabili voto1, voto2, voto3... per memorizzare i voti ottenuti rispettivamente del primo studente, dal secondo, dal terzo ecc

Array Un array è una collezione omogenea di elementi individuati da un indice. L’indice è un valore che consente di individuare ogni singolo elemento. Molti linguaggi utilizzano come indici valori interi che partono da 1; alcuni consentono di scegliere il rango degli indici, altri consentono di utilizzare per gli indici anche valori non numerici.

Dichiarazione di un array Nella fase di dichiarazione si deve specificare il nome della variabile, il numero degli elementi e il tipo di ogni elemento. Si tratta di una collezione di elementi omogenei, quindi tutti dello stesso tipo. In C l’indice del primo elemento è individuato dal valore 0, i seguenti elementi dai successivi valori interi positivi: 1, 2, 3...

Dichiarazione di un array in C Es. dichiarazione una variabile array di tipo int, di nome voti, che contiene dieci valori. Ciascuno dei contenitori che compongono l’array è un elemento, che si distingue dagli altri per avere un indice univoco (posizione dell’elemento all’interno dell’array). Il numero degli elementi è detto lunghezza dell’array. voti[10] ha un indice che assume valori 0, 1, 2... 9 e ha lunghezza 10.

Sintassi in C Dichiarazione di un array in C: <tipo> <variabile> [<lunghezza>] Es. float temperature[30] Per selezionare un elemento di un array si utilizza il nome seguito dall’indice dell’elemento tra parentesi quadre temperature[2] seleziona il terzo elemento dell’array temperature

Selezione di un elemento Non è possibile operare su tutto l’array: Non è possibile stampare con una sola istruzione l’intero contenuto (cout<<voti) Non è possibile ricevere in input con una sola istruzione l’intero array (cin>>voti) È necessario sempre operare su un singolo elemento dell’array Per selezionare un elemento di un array si utilizza il nome seguito dall’indice dell’elemento tra parentesi quadre Esempio voti[2] indica il terzo elemento dell’array voti

Operare con gli array Dovendo operare su ogni singolo elemento dell’array è consigliabile utilizzare un ciclo Il ciclo più indicato è il ciclo for Esempio di lettura dell’array voti: for (i=0;i<10;i++) { printf("Inserisci il voto : %d ",i); scanf ("%f",&voti[i]); }

Dimensione dell’array Il numero degli elementi dell’array deve essere definito in fase di dichiarazione e non può variare nel corso dell’esecuzione del programma. In fase di dichiarazione la lunghezza dell’array deve essere una costante int voti[10] è una dichiarazione corretta int voti[num_stud] è corretta se num_stud è dichiarato come costante ma errato se num_stud è dichiarato come variabile

Controllo sui limiti degli indici Se si utilizza un indice maggiore o uguale alla lunghezza del vettore, si fa riferimento a spazi di memoria non riservati dalla dichiarazione e l’effetto non sarà prevedibile: molto probabilmente si provocheranno errori. Conviene dimensionare adeguatamente il vettore e, in caso di dubbio, sovradimensionarlo. In altri linguaggi di programmazione il controllo sul valore dell’indice è effettuato dal linguaggio stesso; il C offre la massima libertà al progettista software, che però deve utilizzarla con molta attenzione. Un eccessivo sovradimensionamento causa però uno spreco non giustificato di memoria