Fondamenti di Informatica T-1. Classi & vettori

Documenti analoghi
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:

Array. Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1. Dispensa 11. A. Miola Dicembre 2007

Fondamenti di Informatica L-B Esercitazione n 5 Java: Interfaccia Comparable, Array

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)

strutture e file di testo/binari Esercizio - lettura/filtro/scrittura PEOPLE.TXT PARTNERS.DAT Due persone sono compatibili

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

Fondamenti di Informatica

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

Gestore di Stringhe 1

Il presente plico contiene 3 esercizi e deve essere debitamente compilato con cognome e nome, numero di matricola.

Lezione 6 programmazione in Java

Richiami di Fondamenti di Informatica - 1

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

PROVA SCRITTA 23 MARZO 2010

Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a luglio 2011

Prova di Laboratorio di Programmazione

Spazio riservato ai docenti

ISCRIZIONI. Impostazioni form ECDL

Linguaggio C. tipi di dati definiti dall utente. Università degli Studi di Brescia. Docente: Massimiliano Giacomin

Fondamenti di Informatica T-1 Modulo 2

Array. Parte 7. Domenico Daniele Bloisi. Corso di Fondamenti di Informatica Ingegneria delle Comunicazioni BCOR Ingegneria Elettronica BELR

Quadrato Magico. Fondamenti di Programmazione

Fondamenti di Informatica T-1. Selezione Stringhe

Introduzione a Matlab

Programmazione con Java

Il paradigma OO e le Classi

Guida introduttiva su Eclipse. Ing. Marco Dell'Unto

Fondamenti di Informatica T-1

Esercizi di programmazione in linguaggio C English Dictionary

NetBeans. Dott. Ing. Rossella Rubino A.A. 2007/2008 Laboratorio II CdL: Operatore Informatico Giuridico

Esercizio 1: funzione con valore di ritorno di tipo puntatore

Gestione degli impegni Requisiti generali Si fissi come ipotesi che la sequenza di impegni sia ordinata rispetto al tempo,, e che ogni lavoratore abbi

Relazioni. Microsoft Access. Relazioni. Relazioni

Fondamenti di Informatica Esame del 25/06/2010 Tempo a disposizione: 1h 40 min

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

Laboratorio di Programmazione Lezione 3. Cristian Del Fabbro

Politecnico di Milano Facoltà di Ingegneria Industriale INFORMATICA B Prova in itinere del 8 Novembre 2010 COGNOME E NOME RIGA COLONNA MATRICOLA

Fondamenti di Informatica T1 Mappe

Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a settembre 2012

Il presente plico contiene 4 esercizi e deve essere debitamente compilato con cognome e nome, numero di matricola.

Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a luglio 2011

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

Creazione, eliminazione, lettura e scrittura di file di testo

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

Strutture dati. Il che cosa e il come. F. Damiani - Alg. & Lab. 04/05

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

MODULO 2 LA VALUTAZIONE DELLE COMPETENZE

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

Elementi di Informatica A. A. 2016/2017

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

1. Realizzare una funzione: int trovaritardatari(file *fprestiti, FILE *frate, Prestito *dest, int dim)

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 T-1 Modulo 2. Obiettivo di questa esercitazione. Files Allocazione dinamica della memoria

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

Studente (Cognome Nome):

Questa dispensa propone esercizi riepilogativi sui concetti visti finora ovvero: Esercizio 7.1

Gli Array. Dichiarazione di un array

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

DataBase Management System - DBMS

Filtri. Microsoft Access. Filtri. Filtri

Elementi di Informatica e Programmazione PPING 20 aprile 2010 Non saranno corretti elaborati scritti confusamente o con grafia difficilmente leggibile

Passare argomenti al programma

Programmazione è gestione di eventi

ESERCIZIO 1 (FILE DI TESTO)

Transcript:

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.