Fondamenti di Informatica T-1. Classi & vettori

Похожие документы
Fondamenti di Informatica T-1. Classi e array

Classe Vettore (i) Creare una classe che consenta di gestire un vettore di N elementi reali (double), che preveda i seguenti metodi:

Utilizzo delle Maschere in Microsoft Access

Prova di Laboratorio del [ Corso A-B di Programmazione (A.A. 2004/05) Esempio: Media Modalità di consegna:

Esercizi di riepilogo (Fondamenti di Informatica 1 Walter Didimo)

3. un metodo che restituisce l elenco delle matricole di tutti gli studenti del corso;

Esercitazione n 2. Obiettivi

Utilizzo delle Maschere in Microsoft Access

Fondamenti di Informatica T-1 Modulo 2

Fondamenti di Informatica e Laboratorio T-AB Ingegneria Elettronica e Telecomunicazioni. Lab 06 Array" Lab06 1

Algoritmi di Ricerca. Esempi di programmi Java

Ordinare dati. Microsoft Access. Ordinare dati. Ordinare dati. Ordinare dati. Ordinare dati. Query (II), filtri. L ordinamento crescente:

Guida alla gestione degli appelli d esame

Fondamenti di Informatica

Algoritmi di Ricerca. Esempi di programmi Java

Lezione 6 programmazione in Java

9 - Array. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

Prova di Laboratorio di Programmazione

ISCRIZIONI. Impostazioni form ECDL

Fondamenti di Informatica T-1 Modulo 2

Quadrato Magico. Fondamenti di Programmazione

Introduzione a Matlab

Programmazione con Java

Il paradigma OO e le Classi

Guida introduttiva su Eclipse. Ing. Marco Dell'Unto

Esercizio 1: funzione con valore di ritorno di tipo puntatore

Relazioni. Microsoft Access. Relazioni. Relazioni

public static boolean occorre (int[] a, int n) { int i = 0; boolean trovato = false;

Operazioni di Ordinamento

Programmazione in Python per la bioinformatica

Algoritmi di ordinamento: Array e ricorsione

Fondamenti di Informatica T-1

UNIVERSITÀ DEGLI STUDI DI TORINO MANUALE PER LO STUDENTE: PRENOTAZIONE APPELLI CON VERBALIZZAZIONE ONLINE

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

18 - Vettori. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

PRINCIPI DI INFORMATICA CORSO DI LAUREA IN SCIENZE BIOLOGICHE

Fondamenti di Informatica T-1 Modulo 2. Obiettivo di questa esercitazione. File di testo File binari

Dati aggregati. Violetta Lonati

PROCEDURA ISCRIZIONE APPELLI D ESAME ON-LINE

Fondamenti di Informatica T1 Mappe

Microsoft Access. Microsoft Access. Maurizio Rebaudengo, Paolo Garza 1. Microsoft Access. Creazione base di dati. Apertura di una base dati

Tipi di dati strutturati e Linguaggio C. Record o strutture Il costruttore struct in C

4. Accesso diretto per gli archivi con record a lunghezza costante

Classi e array. Viene ora affrontato un problema di definizione di una classe in cui una variabile d istanza è di tipo array

1 (6) 2 (7) 3 (7) 4 (7) 5 (6)

Stringhe e allocazione dinamica della memoria

Formazione a Supporto dell Inserimento Lavorativo. Elementi di Word avanzato. Docente Franchini Gloria

Funzione somma Calcola la somma in un intervallo di celle

Algoritmi di Ricerca. Esempi di programmi Java

Microsoft Access (parte 5) Query. Query. Query. Query. Creare una query

WebDisk. TeamPortal - WebDisk

Esercitazione 11. Liste semplici

File e puntatori a file

03FYZ TECNICHE DI PROGRAMMAZIONE Esercitazione di Laboratorio 03 es.1 23 Marzo 2016

Fondamenti di Informatica - 1. Prof. B.Buttarazzi A.A. 2011/2012

MANUALE DI BASE PER UTILIZZO SOFTWARE PAGHE WEB

Implementazione ADT: Alberi

Prova d Esame Compito A

PROCEDURA ISCRIZIONE APPELLI D ESAME ON-LINE

INTERVENTI DI RIDUZIONE DEL RISCHIO SISMICO. DISCIPLINATI DAL PROGRAMMA O.C.D.P.C. n. 52 del 20/02/2013

Definire una chiave primaria. Microsoft Access. Definire una chiave primaria. Definire una chiave primaria. Definire una chiave primaria

Gli Array. Dichiarazione di un array

Linguaggio C: Introduzione ad ambienti di sviluppo integrati (IDE) e a Dev-C++ Università degli Studi di Brescia

Filtri. Microsoft Access. Filtri. Filtri

ESERCIZIO 1 (FILE DI TESTO)

Транскрипт:

Classi & vettori

2 Array Un vettore (array) è un insieme ordinato, di dimensione fissa, di oggetti dello stesso tipo. Esempio: array capace di contenere al più 10 numeri interi int[] arrayinteri = new int[10]; La dimensione dell array è definita all atto della inizializzazione (con la new) e memorizzata nell attributo length. Ad esempio l array arrayinteri appena creato può contenere non più di 10 elementi! Non si può estendere dinamicamente un array (bisogna ricrearlo). Per fare questo esistono delle classi apposite che vedremo più avanti nel corso.

3 Array L'array è esso stesso un oggetto, definibile e utilizzabile come variabile: <tipo>[] <nome> = new <tipo>[<dimensione>] Per accedere agli elementi: <nome>[<indice>] Esempio, inserire un intero di valore 3 in posizione 0: arraydiinteri[0]=3; Un array è sempre creato vuoto: ogni posizione, se l'array contiene oggetti o stringhe, contiene il valore "null", altrimenti contiene il valore 0 (o il valore false nel caso di un array di boolean).

4 Esempio: la biblioteca Realizzare una applicazione che: Contenga un array di stringhe che rappresentano dei libri Chieda all utente un titolo di libro Verifichi se il libro è presente nell elenco In caso affermativo, stampi a video la posizione (indice dell array) in cui è il titolo stato trovato In caso negativo, stampi Libro non trovato

5 Esempio: il libretto universitario Scrivere un programma che permetta di memorizzare e visualizzare informazioni sugli esami (per un totale di 22 esami) di uno studente. Dello studente, sono memorizzati il nome, il cognome, la matricola e l'elenco degli esami. Di ogni esame, si memorizza il nome, il docente, il numero di crediti e il voto. La classe Studente deve anche fornire un metodo per il calcolo della media pesata, e un metodo per l'aggiunta di un nuovo esame sostenuto. Scrivere un main in cui si crei un oggetto Studente, si aggiungano alcuni esami, si stampi a video la media, si mostri la lista degli esami e l'esame con il voto più alto.

6 Esempio: il libretto universitario Nome della classe Variabili di istanza Metodi pubblici

7 Esempio: il libretto universitario Scaricare http://www- db.deis.unibo.it/courses/fit1- LZ/LABORATORIO/esercizi/20 12-13/es6.jar Importare la libreria nel progetto: Click con il tasto destro sul progetto, "Build path" "Add External Archives" Selezionare la libreria scaricata Creare una classe Main (in un nuovo package), creare il main e inserire la riga di codice Finestra f = new Finestra();

8 Esempio: il libretto universitario Una versione più "moderna"

9 Esercizio: L'autostrada A31 Realizzare un programma per il pagamento del pedaggio sull autostrada A31. Ogni autostrada ha un nome ed è composta da un certo numero di caselli (per la A31, 6 caselli). Tutte le autostrade hanno lo stesso costo per km (ad esempio, 0.10). Ogni casello è caratterizzato da un nome e dalla distanza dal casello precedente. La classe Autostrada deve esporre metodi per: Calcolare la distanza totale tra due caselli (dati gli indici). Calcolare il costo del pedaggio, conoscendo l'indice del casello di partenza e quello del casello di arrivo. Stampare la lista dei caselli in un percorso. Per semplicità: il senso di percorrenza dell autostrada è unico.

10 Esercizio: l'autostrada A31 LONGARE - PIOVENE ROCCHETTE Indicazione Distanza Piovene Rocchette 0 Thiene-Schio 9.2 Dueville 9.9 Vicenza Nord 8 Torino-Trieste 8.5 Longare-Montegaldella 6.5 Nella classe principale, creare l'autostrada a31 con 6 caselli, creare e inserire i 6 caselli indicati sopra, e stampare la distanza, il costo e il percorso da Dueville a Longare-Montegaldella

11 Estensioni Provare a modificare il programma in modo da valutare entrambi i sensi di percorrenza (attenzione ai metodi per calcolare la distanza tra due caselli e stampare il percorso). Modificare i tre metodi della classe Autostrada, in modo da fornire, come parametri di ingresso, due oggetti Casello invece che gli indici dei caselli nell'array.