/** * VETTORE DINAMICO elementi */ private Vector elementi; /** * METODO COSTRUTTORE */ public coda() { elementi=new Vector(); }

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "/** * VETTORE DINAMICO elementi */ private Vector elementi; /** * METODO COSTRUTTORE */ public coda() { elementi=new Vector(); }"

Transcript

1 import java.util.*; class coda * Questa classe contiene tutti i metodi per la gestione della coda D'Ambrosio Giovanni Classe 4D I.T.I.S. Grottaminarda 26/02/2010 * VETTORE DINAMICO elementi private Vector elementi; * METODO COSTRUTTORE public coda() elementi=new Vector(); * INSERISCE UN ELEMENTO ALLA FINE DELLA CODA <obj> <rappresenta l'oggetto da inserire nella coda> public void aggiungi(object obj) elementi.addelement(obj); * PRELEVA UN ELEMENTO ALL'INIZIO DELLA CODA public Object togli() Object obj=null; int size=elementi.size(); if (size>0 ) obj=elementi.elementat(0); elementi.removeelementat(0); return obj;

2 * SEGNALA, CON UN VALORE BOOLEANO, SE LA CODA NON CONTIENE ELEMENTI public boolean vuota() if(elementi.size()>0) return false; return true; * RESTITUISCE IL NUMERO DI ELEMENTI PRESENTI NELLA CODA public int size() return elementi.size(); * RICERCA UN ELEMENTO NELLA CODA <c> <rappresenta l'elemento da ricercare nella coda> public void ricerca(string c) boolean verifica = false; int i=0; int size= elementi.size(); do if(c.equals(elementi.elementat(i)) ) System.out.println("*** L'elemento: " + c + " è stato trovato nella coda in posizione ***" + (i+1)); verifica = true; i++; while(!verifica && i<size ); if (verifica==false) System.out.println("*** L'elemento: " + c + " non è presente nella coda ***");

3 * VISUALIZZA TUTTI GLI ELEMENTI DELLA CODA public void visualizza() int i; int size=elementi.size(); for(i=0; i<size;i++) System.out.println(elementi.elementAt(i)); * ELIMINA TUTTI GLI ELEMENTI DELLA CODA public void elimina() int i; int size=elementi.size(); for(i=0; i<size;i++) elementi.removeelementat(0);

4 import java.io.*; public class test Questa classe gestisce un menù per la gestione di una D'Ambrosio Giovanni Classe 4D I.T.I.S. 26/02/2010 public static void main(string[] args) InputStreamReader Input=new InputStreamReader(System.in); BufferedReader tastiera=new BufferedReader(Input); /* DICHIARAZIONE E ALLOCAZIONE DI UN'ISTANZA DELLA CLASSE CODA coda Coda1 =new coda(); int op; int i; int risp=9; String elemento=" "; String cerca=" "; try do System.out.println(" MENU' GESTIONE CODA "); System.out.println("********************************************************** ****"); System.out.println("********************************************************** ****"); System.out.println("* *"+" "+"* *"); System.out.println("* *"+"\t 1 = INSERISCI ELEMENTO "+" "+"* *"); System.out.println("* *"+"\t 2 = CANCELLA ELEMENTO"+" "+"* *"); System.out.println("* *"+"\t 3 = VERIFICA SE LA CODA E' VUOTA"+" "+"* *"); System.out.println("* *"+"\t 4 = VISUALIZZA IL NUMERO DI ELEMENTI"+" "+"* *"); System.out.println("* *"+"\t 5 = RICERCA UN ELEMENTO NELLA CODA"+" "+"* *"); System.out.println("* *"+"\t 6 = VISUALIZZA TUTTI GLI ELEMENTI DELLA CODA"+" "+"* *"); System.out.println("* *"+"\t 7 = ELIMINA TUTTI GLI ELEMENTI DELLA CODA"+" "+"* *"); System.out.println("* *"+"\t 8 = ESCI "+" "+"* *"); System.out.println("* *"+" "+"* *");

5 System.out.println("**************************************************************"); System.out.println("********************************************************** ****"); System.out.println(" SCEGLI L'OPERAZIONE CHE VUOI ESEGUIRE "); op=integer.parseint(tastiera.readline()); /* AGGIUNGE L'ELEMENTO ALLA CODA if(op==1) System.out.println("--- Inserisci l'elemento da aggiungere ---"); elemento=tastiera.readline(); Coda1.aggiungi(elemento); System.out.println("*** L'elemento è stato aggiunto ***"); /* CANCELLA L'ELEMENTO DALLA CODA if(op==2) Coda1.togli(); System.out.println("*** L'elemento è stato cancellato ***"); System.out.println("*** Non sono presenti elementi nella coda ***"); /* VERIFICA SE LA CODA E' VUOTA if(op==3) Coda1.vuota(); if(coda1.vuota()) System.out.println("*** La coda è vuota ***"); System.out.println("*** La coda è piena ***"); /* VISUALIZZA IL NUMERO DI ELEMENTI PRESENTI NELLA CODA if(op==4) Coda1.size(); System.out.println("*** Il numero di elementi presenti nella coda è: "+ Coda1.size()+ " ***");

6 /* RICERCA UN ELEMENTO ALL'INTERNO DELLA CODA if(op==5) System.out.println("--- Inserisci l'elemento che vuoi ricercare --- "); cerca = tastiera.readline(); Coda1.ricerca(cerca); System.out.println("La coda è vuota"); /* VISUALIZZA TUTTI GLI ELEMENTI PRESENTI NELLA CODA if(op==6) System.out.println("ELEMENTI DELLA CODA"); System.out.println(" "); Coda1.visualizza(); System.out.println("La coda è vuota"); /* ELIMINA TUTTI GLI ELEMENTI DELLA CODA if(op==7) Coda1.elimina(); System.out.println("*** Gli elementi della coda sono stati cancellati ***"); System.out.println("La coda è vuota"); /* ESCE DAL PROGRAMMA if(op==8) System.exit(1);

7 while(risp!=8); catch(exception e) System.out.println("CATTURATA ECCEZIONE");

La gestione dell input/output da tastiera La gestione dell input/output da file La gestione delle eccezioni

La gestione dell input/output da tastiera La gestione dell input/output da file La gestione delle eccezioni La gestione dell input/output da tastiera La gestione dell input/output da file La gestione delle eccezioni Autore: Prof. Agostino Sorbara ITIS "M. M. Milano" Autore: Prof. Agostino Sorbara ITIS "M. M.

Dettagli

Parcheggio.rtf 1/8 6 gennaio 2009. Prova di programmazione: parcheggio a pagamento

Parcheggio.rtf 1/8 6 gennaio 2009. Prova di programmazione: parcheggio a pagamento Parcheggio.rtf 1/8 6 gennaio 2009 Prova di programmazione: parcheggio a pagamento Si sviluppi il codice per la gestione di un parcheggio a pagamento mediante la classe Parcheggio, che ospita le auto rappresentate

Dettagli

INFORMATICA GRAFICA - FONDAMENTI DI INFORMATICA Ing. Civile - Edile/Architettura Dott. Penzo SOLUZIONE PROVA SCRITTA DEL 16/09/2002.

INFORMATICA GRAFICA - FONDAMENTI DI INFORMATICA Ing. Civile - Edile/Architettura Dott. Penzo SOLUZIONE PROVA SCRITTA DEL 16/09/2002. INFORMATICA GRAFICA - FONDAMENTI DI INFORMATICA Ing. Civile - Edile/Architettura Dott. Penzo SOLUZIONE PROVA SCRITTA DEL 16/09/2002 Esercizio 4) import fiji.io.simplereader; class Programma{ public static

Dettagli

Finestra.java. static String nomicolonne[] = {"ind.","cognome","nome","telefono","e-mail"}; //nomi delle colonne della tabella

Finestra.java. static String nomicolonne[] = {ind.,cognome,nome,telefono,e-mail}; //nomi delle colonne della tabella import java.awt.*; import java.awt.event.actionevent; import java.awt.event.actionlistener; import java.awt.event.windowevent; import java.awt.event.windowlistener; import java.io.*; import java.util.*;

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

Java, Oggetti e Strutture Dati di G. Callegarin - Edizioni CEDAM

Java, Oggetti e Strutture Dati di G. Callegarin - Edizioni CEDAM Java, Oggetti e Strutture Dati di G. Callegarin - Edizioni CEDAM ERRATA CORRIGE dei programmi della prima stampa (Aprile 2004) aggiornato al 20/05/2017 Nota: il codice corretto è ottenibile da quella errato

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

Esempio su strutture dati dinamiche: ArrayList

Esempio su strutture dati dinamiche: ArrayList Esempio su strutture dati dinamiche: ArrayList 1 ArrayList Gli array non possono cambiare la propria dimensione: il numero di elementi contenuti viene stabilito al momento della creazione e rimane immutato.

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 12 ADT: Lista, Pila, Coda A. Miola Marzo 2008 http://www.dia.uniroma3.it/~java/fondinf2/ ADT: Lista, Pila, Coda 1 Contenuti!Tipo

Dettagli

Algoritmi e Strutture Dati. Tipo di dato astratto e Strutture dati elementari

Algoritmi e Strutture Dati. Tipo di dato astratto e Strutture dati elementari Algoritmi e Strutture Dati Tipo di dato astratto e Strutture dati elementari 1 Argomenti della lezione Tipi di dato astratto Strutture dati elementari Liste o Implementazione di liste in Java Stack Code

Dettagli

// inizializzazione della biblioteca con utenti, libri e prestiti // non richiesta Biblioteca.inizializza();

// inizializzazione della biblioteca con utenti, libri e prestiti // non richiesta Biblioteca.inizializza(); // Fondamenti di Informatica/Informatica Grafica // Soluzione del compito del 21/03/2003 // per semplicità si è deciso di riportare in un unico file il testo // delle soluzioni degli esercizi 1, 2 e 3.

Dettagli

Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a. 2012-13 14 giugno 2013

Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a. 2012-13 14 giugno 2013 Cognome Nome Matricola Postazione PC Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a. 2012-13 14 giugno 2013 Testo Il database di una banca è costituito da due vettori paralleli. Il primo

Dettagli

Studente (Cognome Nome): Corso di Informatica Corso di Laurea in Ingegneria Gestionale a.a. 2007-08 Primo scritto 11 Gennaio 2008

Studente (Cognome Nome): Corso di Informatica Corso di Laurea in Ingegneria Gestionale a.a. 2007-08 Primo scritto 11 Gennaio 2008 Studente (Cognome Nome): Matricola: Corso di Informatica Corso di Laurea in Ingegneria Gestionale a.a. 2007-08 Primo scritto 11 Gennaio 2008 Si noti che le soluzioni ai quesiti saranno considerate valide

Dettagli

Esercizio 6 Realizzare una classe astratta per le Figure piane e due sottoclassi, la sottoclasse Quadrato e la sottoclasse Rettangolo.

Esercizio 6 Realizzare una classe astratta per le Figure piane e due sottoclassi, la sottoclasse Quadrato e la sottoclasse Rettangolo. Esercizio 6 Realizzare una classe astratta per le Figure piane e due sottoclassi, la sottoclasse Quadrato e la sottoclasse Rettangolo. public abstract class FiguraPiana2{ private double base; public FiguraPiana2(double

Dettagli

ARRAY E STRINGHE. G. Frosini Slide 1

ARRAY E STRINGHE. G. Frosini Slide 1 ARRAY E STRINGHE G. Frosini Slide 1 Array: VARIABILI ARRAY struttura dati costituita da elementi (anche nessuno, array vuoto) dello stesso tipo; tipo array: tipo degli elementi, non numero degli elementi;

Dettagli

Compute engine generici in RMI

Compute engine generici in RMI Compute engine generici in RMI Esempio: Calcolo del prodotto scalare Un unico server offre il servizio di calcolo del prodotto scalare tra vettori di interi Un client richiede al server il calcolo del

Dettagli

SOMMARIO Coda (queue): QUEUE. QUEUE : specifica QUEUE

SOMMARIO Coda (queue): QUEUE. QUEUE : specifica QUEUE SOMMARIO Coda (queue): Specifica: interfaccia. Implementazione: Strutture indicizzate (array): Array di dimensione variabile. Array circolari. Strutture collegate (nodi). Prestazioni. Strutture Software

Dettagli

Esercitazione 6. Tutor: Ing. Diego Rughetti. Anno Accademico 2007/2008

Esercitazione 6. Tutor: Ing. Diego Rughetti. Anno Accademico 2007/2008 Dipartimento di Informatica e Sistemistica Antonio Ruberti Sapienza Università di Roma Esercitazione 6 Corso di Tecniche di programmazione Laurea in Ingegneria Informatica (Canale di Ingegneria delle Reti

Dettagli

System.out.print("\tATTENZIONE: hi inserito un valore non valido!\n");

System.out.print(\tATTENZIONE: hi inserito un valore non valido!\n); Creare un applicazione console che dato l indice della borsa di Milano nel giorno precedente, calcola la variazione percentuale rispetto al valore dell indice del giorno corrente. import java.io.*; public

Dettagli

Laboratorio di sistemi Strutture dati ricorsive (2) Java

Laboratorio di sistemi Strutture dati ricorsive (2) Java Liberamente adattato da Il linguaggio Java di Agostino Lorenzi, Giuseppe Facchetti, Andrea Rizzi Vogliamo rappresentare la seguente struttura dati (una lista concatenata, fatta da nomi di amici e numeri

Dettagli

Esempi di esercizi d esame

Esempi di esercizi d esame Esempi di esercizi d esame Fondamenti di Informatica L-B 1 Cellulare Testo esercizio: 1.Specifiche Si richiede di realizzare una classe che implementa il funzionamento di un telefono cellulare Tale classe

Dettagli

Esempio su strutture dati dinamiche: ArrayList

Esempio su strutture dati dinamiche: ArrayList Esempio su strutture dati dinamiche: ArrayList 1 ArrayList! Abbiamo detto che gli array non possono cambiare la propria dimensione: il numero di elementi contenuti viene stabilito al momento della creazione

Dettagli

Corso sul linguaggio Java

Corso sul linguaggio Java Corso sul linguaggio Java Modulo JAVA1 1.3 - Le strutture di controllo 1 Prerequisiti Istruzioni semplici Strutture di controllo Scittura di semplici applicazioni Java 2 1 Introduzione In molti casi le

Dettagli

Insieme.java. Printed by Paolo. Feb 24, 04 16:44 Page 1/1 class Insieme { private int[] elementi; Tuesday February 24, /10

Insieme.java. Printed by Paolo. Feb 24, 04 16:44 Page 1/1 class Insieme { private int[] elementi; Tuesday February 24, /10 Feb 24, 04 16:44 Page 1/1 class Insieme { private int[] elementi; public Insieme() { elementi = new int[0]; public static boolean vuoto(insieme i) { return i.elementi.length == 0; Insieme.java public static

Dettagli

SAPIENZA Università di Roma, Facoltà di Ingegneria

SAPIENZA Università di Roma, Facoltà di Ingegneria SAPIENZA Università di Roma, Facoltà di Ingegneria Corso di PROGETTAZIONE DEL SOFTWARE Laurea in Ingegneria Informatica Prof. E.Casalicchio A.A. 2008/09 QUARTA PARTE: Soluzioni Esercizi 13-23 Soluzione

Dettagli

7 Esercitazione (svolta): Callback. Polling. Java RMI: callback. Server. Server. Client. Client. due possibilità:

7 Esercitazione (svolta): Callback. Polling. Java RMI: callback. Server. Server. Client. Client. due possibilità: 7 Esercitazione (svolta): due possibilità: Java RMI: callback Molte applicazioni richiedono un meccanismo publish/subscribe I partecipanti (client) necessitano di notifiche da parte del coordinatore (server)

Dettagli

Flussi, lettori e scrittori

Flussi, lettori e scrittori Flussi, lettori e scrittori Per sequenze di byte, InputStream, OutputStream e loro sottoclassi. Es: InputStream in = ; int next = in. read(); if (next!= -1) byte b = (byte) next; Per sequenze di caratteri,

Dettagli

import java.io.*; char sceltautente = '_'; boolean condizionesn = true; boolean condizionedowhile = true; boolean condizioneprogramma = true;

import java.io.*; char sceltautente = '_'; boolean condizionesn = true; boolean condizionedowhile = true; boolean condizioneprogramma = true; Un imposta sul reddito viene applicata in base alle seguenti fasce: fino a 35.000 euro 23% e oltre 35.000 euro 33%. Progettare un software, basato su un applicazione console, che, dato un certo reddito,

Dettagli

Iterazioni. L istruzione while. while (condition) istruzione

Iterazioni. L istruzione while. while (condition) istruzione Iterazioni L istruzione while while (condition) istruzione Ripete l esecuzione di istruzione fino a che la condizione resta vera while (balance < targetbalance) year++; double interest = balance * rate

Dettagli

Esempio su strutture dati dinamiche: ArrayList

Esempio su strutture dati dinamiche: ArrayList Esempio su strutture dati dinamiche: ArrayList 1 ArrayList Abbiamo detto che gli array non possono cambiare la propria dimensione: il numero di elementi contenuti viene stabilito al momento della creazione

Dettagli

import java.io.*; double massa = 0.0; double velocità = 0.0; double coefficienteattrito = 0.0; int numeroveicoli = 0;

import java.io.*; double massa = 0.0; double velocità = 0.0; double coefficienteattrito = 0.0; int numeroveicoli = 0; import java.io.*; public class Veicolo { private String nomeveicolo = ""; private final double g = 9.8; private double massa; private double velocità; private double coefficienteattrito; public static

Dettagli

Realizzare un applicazione console che stampi la somma dei primi n numeri dispari oppure pari (a scelta dell operatore). import java.io.

Realizzare un applicazione console che stampi la somma dei primi n numeri dispari oppure pari (a scelta dell operatore). import java.io. Realizzare un applicazione console che stampi la somma dei primi n numeri dispari oppure pari (a scelta dell operatore). import java.io.*; public class M1_13 { public static void main(string args[]) throws

Dettagli

Esercizi Java. class somma2 { static int somma(int a,int b) {return a+b; }

Esercizi Java. class somma2 { static int somma(int a,int b) {return a+b; } Java è un linguaggio di programmazione c indipendente dalla piattaforma, ovvero un linguaggio di programmazione che permette di compilare i programmi una volta sola e di installarli su computer che usano

Dettagli

Il tipo di dato astratto Pila

Il tipo di dato astratto Pila Il tipo di dato astratto Pila Il tipo di dato Pila Una pila è una sequenza di elementi (tutti dello stesso tipo) in cui l inserimento e l eliminazione di elementi avvengono secondo la regola seguente:

Dettagli

import java.io.*; boolean condizioneciclo = true;

import java.io.*; boolean condizioneciclo = true; Un azienda agricola produce un tipo di frutta che vende a un grossista a 3 diversi prezzi al kilogrammo (X, Y e Z), che dipendono dalla pezzatura in grammi del frutto stesso (piccolo, medio e super). Dati

Dettagli

LETTURA DI DATI DA INPUT

LETTURA DI DATI DA INPUT LETTURA DI DATI DA INPUT Gli stream di byte consentono già di leggere dati (numeri di vario tipo), tramite la classe DataInputStream FileDescriptor InputStream SequenceInputStream ByteArrayInputStream

Dettagli

Cifratura simmetrica

Cifratura simmetrica Cifratura Cifratura simmetrica Alice canale insicuro Bob 2 Cifratura simmetrica m Algoritmo di decifratura m Alice canale insicuro Algoritmo di cifratura Bob 3 Cifrari simmetrici chiave privata k chiave

Dettagli

Corso di Reti di Calcolatori T

Corso di Reti di Calcolatori T Università degli Studi di Bologna Scuola di Ingegneria Corso di Reti di Calcolatori T Esercitazione 7 (svolta) Java RMI e Riferimenti Remoti Un RMI Registry Remoto Luca Foschini Anno accademico 2018/2019

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 E08 Soluzione Esercizi F. Gasparetti, C. Limongelli Marzo 2008 http://www.dia.uniroma3.it/~java/fondinf1/ Soluzione Esercizi

Dettagli

Prova d Esame 07.04.2006 Compito A

Prova d Esame 07.04.2006 Compito A DOMANDA 1 (6 punti) Si analizzi il codice seguente e si scriva l output prodotto dai metodi main public class General { public static String s1 = "Ciao"; protected int n; public General() { n = 1; public

Dettagli

Anno Accademico 2003/04. Docente modulo 1: Annalisa De Bonis. Ripete l esecuzione di statement fino a che la condizione e` verificata

Anno Accademico 2003/04. Docente modulo 1: Annalisa De Bonis. Ripete l esecuzione di statement fino a che la condizione e` verificata Iterazioni Anno Accademico 2003/04 Docente modulo 1: Lo statement while while (condition) statement; Ripete l esecuzione di statement fino a che la condizione e` verificata while (balance < targetbalance)

Dettagli

Prova d Esame 07.04.2006 Compito B

Prova d Esame 07.04.2006 Compito B DOMANDA 1 (6 punti) Si analizzi il codice seguente e si scriva l output prodotto dai metodi main public class General { public static String s1 = "ciao"; protected int n; public General() { n = 3; public

Dettagli

Esempio su strutture dati dinamiche: ArrayList

Esempio su strutture dati dinamiche: ArrayList Esempio su strutture dati dinamiche: ArrayList Fondamenti di Informatica L-B 1 ArrayList Abbiamo detto che gli array non possono cambiare la propria dimensione: il numero di elementi contenuti viene stabilito

Dettagli

Esempio: Tombola! Vogliamo progettare una applicazione che realizza il gioco della tombola Versione semplificata: un banco, un

Esempio: Tombola! Vogliamo progettare una applicazione che realizza il gioco della tombola Versione semplificata: un banco, un Esempio: Tombola! Vogliamo progettare una applicazione che realizza il gioco della tombola Versione semplificata: un banco, un giocatore, ogni giocatore una scheda Ci vengono già fornite le classi necessarie

Dettagli

Esercitazione n 4. Capacità di analisi e di estensione di progetti esistenti Il concetto di filtro Linguaggio Java:

Esercitazione n 4. Capacità di analisi e di estensione di progetti esistenti Il concetto di filtro Linguaggio Java: Esercitazione n 4 Obiettivi: Capacità di analisi e di estensione di progetti esistenti Il concetto di filtro Linguaggio Java: Gestione di input/output da console e da file (package java.io) Utilizzo di

Dettagli

Gestione delle Eccezioni

Gestione delle Eccezioni Gestione delle Eccezioni Condizioni di Errore Una condizione di errore in un programma può avere molte cause Errori di programmazione Divisione per zero, cast non permesso, accesso oltre i limiti di un

Dettagli

20. Appunti sulle liste (gestione in linguaggio C#) 16/04/2015 Arraylist

20. Appunti sulle liste (gestione in linguaggio C#) 16/04/2015 Arraylist 20. Appunti sulle liste (gestione in linguaggio C#) 16/04/2015 Arraylist Esamina il codice seguente, eseguilo passo passo (F11) e rispondi ai quesiti: using System; using System.Collections; class Program

Dettagli

Java threads (2) Programmazione Concorrente

Java threads (2) Programmazione Concorrente Java threads (2) emanuele lattanzi isti information science and technology institute 1/28 Programmazione Concorrente Utilizzo corretto dei thread in Java emanuele lattanzi isti information science and

Dettagli

Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a. 2009-10 I scritto Febbraio 11 Febbraio 2011

Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a. 2009-10 I scritto Febbraio 11 Febbraio 2011 Cognome Matricola Nome Postazione PC Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a. 2009-10 I scritto Febbraio 11 Febbraio 2011 Quesito La Biblioteca è costituita da due array: il primo

Dettagli

Corso di Fondamenti di Informatica II

Corso di Fondamenti di Informatica II Corso di Fondamenti di Informatica II Algoritmi sulle liste a.a. 2009/2010 Francesco Fontanella Creare una lista da un vettore (ricorsivo) nodo* create_list(tipovalue v[], int n) nodo *l; if (n == 0) return

Dettagli

Chat. Si ha un server in ascolto sulla porta 4444. Quando un client richiede la connessione, il server risponde con: Connessione accettata.

Chat. Si ha un server in ascolto sulla porta 4444. Quando un client richiede la connessione, il server risponde con: Connessione accettata. Chat Si ha un server in ascolto sulla porta 4444 Quando un client richiede la connessione, il server risponde con: Connessione accettata. Nome: Il client deve rispondere con lo user name A questo punto

Dettagli

Gestione di errori e situazioni eccezionali. Gestione delle eccezioni. Gestione tradizionale di errori e situazioni eccezionali (2)

Gestione di errori e situazioni eccezionali. Gestione delle eccezioni. Gestione tradizionale di errori e situazioni eccezionali (2) Gestione di errori e situazioni eccezionali Gestione delle eccezioni Una procedura (utente o di libreria) deve poter segnalare l impossibilità di produrre un risultato significativo o la propria terminazione

Dettagli

Le basi del linguaggio Java

Le basi del linguaggio Java Le basi del linguaggio Java Compilazione e interpretazione Quando si compila il codice sorgente scritto in Java, il compilatore genera il codice compilato, chiamato bytecode. È un codice generato per una

Dettagli

import java.io.*; Pag. 1 di 15

import java.io.*; Pag. 1 di 15 8 studenti di 5 classi quinte hanno partecipato alle olimpiadi della matematica. Stampare l elenco degli studenti in ordine decrescente di punteggio ottenuto e la rispettiva classe di appartenenza. Realizzare

Dettagli

import java.io.*; System.out.print("\tInserire la velocità (in km/h) dell\'automobile: ");

import java.io.*; System.out.print(\tInserire la velocità (in km/h) dell\'automobile: ); Un automobile di massa m (in kilogrammi) viaggia a una velocità v, in km/h. Realizzare un applicazione console che permetta di calcolare l energia cinetica E dell automobile espressa in joule. SUGGERIMENTO:

Dettagli

Java: Compilatore e Interprete

Java: Compilatore e Interprete Java: Compilatore e Interprete Java Virtual Machine Il bytecode non è Linguaggio Macchina. Per diventarlo, deve subire un ulteriore trasformazione che viene operata dall interprete Java in modalità JIT

Dettagli

import java.io.*; Pag. 1 di 9

import java.io.*; Pag. 1 di 9 Di 5 regioni italiane si conoscono i metri quadrati relativi alla pianura, alla collina e alla montagna. Determinare l ampiezza complessiva in metri quadrati della pianura, della collina e della montagna

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

Test di unità con JUnit4

Test di unità con JUnit4 Test di unità con JUnit4 Richiamo sul test di unità Il test d unità è una metodologia che permette di verificare il corretto funzionamento di singole unità di codice in determinate condizioni. Nel caso

Dettagli

Esercizi sulla definizione di classi (Fondamenti di Informatica 1 Walter Didimo) Soluzioni

Esercizi sulla definizione di classi (Fondamenti di Informatica 1 Walter Didimo) Soluzioni Esercizi sulla definizione di classi (Fondamenti di Informatica 1 Walter Didimo) Soluzioni Esercizio 1 Nella classe definita di seguito indicare quali sono le variabili di istanza, quali sono le variabili

Dettagli

Ricorsione. Laboratorio di Programmazione II Corso di Laurea in Bioinformatica Dipartimento di Informatica - Università di Verona.

Ricorsione. Laboratorio di Programmazione II Corso di Laurea in Bioinformatica Dipartimento di Informatica - Università di Verona. Laboratorio di Programmazione II Corso di Laurea in Bioinformatica Dipartimento di Informatica - Università di Verona Sommario Implementazione di Utilizzo ricorsione per processare dati in java vs. multipla

Dettagli

Linguaggi Corso M-Z - Laurea in Ingegneria Informatica A.A. 2007-2008. Esercitazione. Programmazione Object Oriented in Java

Linguaggi Corso M-Z - Laurea in Ingegneria Informatica A.A. 2007-2008. Esercitazione. Programmazione Object Oriented in Java Linguaggi Corso M-Z - Laurea in Ingegneria Informatica A.A. 2007-2008 Alessandro Longheu http://www.diit.unict.it/users/alongheu alessandro.longheu@diit.unict.it Programmazione Object Oriented in Java

Dettagli

Jav@Lab Il linguaggio Java I file sequenziali

Jav@Lab Il linguaggio Java I file sequenziali Jav@Lab Il linguaggio Java I file sequenziali Input e Output Secondo i canoni dei linguaggi di programmazione "procedurali" il concetto di input e output è strettamente legato al tipo di dispositivo esterno

Dettagli

Fondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011

Fondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011 Fondamenti di Informatica 1 Prof. B.Buttarazzi A.A. 2010/2011 Sommario Eccezioni Categorie di eccezioni checked unchecked Gestione delle eccezioni Clausola throws Costrutto try - catch - finally Comando

Dettagli

import java.io.*; System.out.print("\tInserire il valore (in OHM) della resistenza \"R1\": ");

import java.io.*; System.out.print(\tInserire il valore (in OHM) della resistenza \R1\: ); Un circuito elettrico è formato da una batteria, di tensione E, che alimenta due resistori R 1 e R 2 in serie. Calcolare la corrente I erogata dalla batteria. Risolvere il problema mediante un applicazione

Dettagli

Gestione delle eccezioni Individuazione e ripristino parseint Individuazione e ripristino Individuazione e ripristino parseint

Gestione delle eccezioni Individuazione e ripristino parseint Individuazione e ripristino Individuazione e ripristino parseint parseint parseint showinputdialog JOptionPanenull null throw BankAccount IllegalArgumentException amount public class BankAccount { public void withdraw(double amount) { if (balance < amount) { // Parametro

Dettagli

import java.io.*; System.out.print("\tInserire l\'altezza (in CM) delle piastrelle: "); stringainput = tastiera.readline();

import java.io.*; System.out.print(\tInserire l\'altezza (in CM) delle piastrelle: ); stringainput = tastiera.readline(); Si vogliono inserire, su un terreno all interno di un giardino, delle mattonelle che è possibile ritagliare in varie dimensioni. Le mattonelle devono essere rettangolari, con la condizione che ogni mattonella,

Dettagli

LAVORI ESTIVI DI INFORMATICA PER LA CLASSE IV Sez. Ainf (Prof. Tessore Luca)

LAVORI ESTIVI DI INFORMATICA PER LA CLASSE IV Sez. Ainf (Prof. Tessore Luca) Ministero dell Istruzione, dell Università e della Ricerca Istituto Tecnico Industriale Statale Enrico Mattei Via Martiri di Cefalonia 46-20097 San Donato Milanese Tel. 0255691411 - Fax 025276676 itisando@tin.it

Dettagli

Operazioni di scrittura e lettura con periferici in linguaggio Java

Operazioni di scrittura e lettura con periferici in linguaggio Java Operazioni di scrittura e lettura con periferici in linguaggio Java Flussi logici (stream) di output Operazione di scrittura a monitor con uso di stream (flusso logico) di output RAM System.out.println

Dettagli

Laboratorio di Programmazione Lezione 2. Cristian Del Fabbro

Laboratorio di Programmazione Lezione 2. Cristian Del Fabbro Laboratorio di Programmazione Lezione 2 Cristian Del Fabbro Prossima lezione GIOVEDÌ 29 OTTOBRE 14:00 Input da tastiera package input; import java.io.*; public class Input { public static void main(string[]

Dettagli

Programmazione su Reti

Programmazione su Reti Programmazione su Reti Esempio di applicazione Client Server su protocollo Soap Fabio Donatantonio Applicazione Applicazione Client-Server per la gestione di un elenco di persone con relativi dati. Viene

Dettagli

Fondazione ITS A. Volta linguaggi Flavia Lollis 1

Fondazione ITS A. Volta linguaggi Flavia Lollis 1 Costruire una lampadina che possa essere nello stato spenta, accesa o rotta, e cambia stando facendo click su un bottone; ogni lampadina può cambiare stato un numero prefissato di volte, e con il bottone

Dettagli

Corso sul linguaggio Java

Corso sul linguaggio Java Corso sul linguaggio Java Modulo JAVA3 3A2 Algoritmi notevoli 1 Prerequisiti Programmazione elementare in Java Algoritmi notevoli su array 2 1 Introduzione In questa Unità vediamo rapidamente gli algoritmi

Dettagli

Raffaella Brighi, a.a. 2005/06. Eventi e listener. Corso di Laboratorio II. A.A. 2005-06

Raffaella Brighi, a.a. 2005/06. Eventi e listener. Corso di Laboratorio II. A.A. 2005-06 Raffaella Brighi, a.a. 2005/06 Eventi e listener Corso di Laboratorio II. A.A. 2005-06 Eventi e listener Un evento è un oggetto che rappresenta il verificarsi di un azione dell utente o del sistema(es

Dettagli

Prossime lezioni. Dai TDA agli oggetti. Riassunto. Riassunto TDA. Oggi. Stefano Mizzaro 1

Prossime lezioni. Dai TDA agli oggetti. Riassunto. Riassunto TDA. Oggi. Stefano Mizzaro 1 Prossime lezioni Dai TDA agli oggetti Stefano Mizzaro Dipartimento di matematica e informatica Università di Udine http://www.dimi.uniud.it/mizzaro mizzaro@dimi.uniud.it Programmazione, lezione 18 19 gennaio

Dettagli

Java Virtual Machine

Java Virtual Machine Java Virtual Machine programmi sorgente: files.java compilatore files.class bytecode linker/loader bytecode bytecode Java API files.class interprete macchina ospite Indipendenza di java dalla macchina

Dettagli

import java.io.*; System.out.print("\tInserire il tasso di spesa: ");

import java.io.*; System.out.print(\tInserire il tasso di spesa: ); Una famiglia, alla fine di ogni mese, percepisce un reddito di X euro. Nell ipotesi che ogni mese spenda un importo pari a T% del reddito totale (compresi i risparmi dei mesi precedenti) e che per tutto

Dettagli

Corso di Laurea in Ingegneria Gestionale Esame di Informatica - a.a. 2012-13 25 luglio 2013

Corso di Laurea in Ingegneria Gestionale Esame di Informatica - a.a. 2012-13 25 luglio 2013 Cognome Nome Matricola Postazione PC Corso di Laurea in Ingegneria Gestionale Esame di Informatica - a.a. 2012-13 25 luglio 2013 Testo Il database di una banca è costituito da due vettori paralleli. Il

Dettagli

Fondamenti di informatica 2 Claudio Biancalana. Esercitazione capitolo 19 Array

Fondamenti di informatica 2 Claudio Biancalana. Esercitazione capitolo 19 Array Fondamenti di informatica 2 Claudio Biancalana Esercitazione capitolo 19 Array Contatti claudio.biancalana@dia.uniroma3.it Contenuto esercitazione Ricerca sequenziale Progettazione e Divide et Impera 2

Dettagli

RTTI Run-time type identification

RTTI Run-time type identification RTTI Run-time type identification Come determinare il tipo di un oggetto durante l'esecuzione RTTI 1 Ereditarietà Forma Linea Rettangolo Cerchio interface Forma { class Linea implements Forma { void ;

Dettagli

Corso sul linguaggio Java

Corso sul linguaggio Java Corso sul linguaggio Java Modulo JAVA6 A1 I file testo 1 Prerequisiti Programmazione base in Java Utilizzo di classi e oggetti Modello produttore consumatore Operazioni logiche su struttura file 2 1 Introduzione

Dettagli

RicercaSequenziale import public class public static void throws new new new int int int char boolean true true false false out true out out else

RicercaSequenziale import public class public static void throws new new new int int int char boolean true true false false out true out out else Algoritmo di ricerca sequenziale o lineare, in una Tabella con LunghezzaTabella righe. L algoritmo restituisce il valore TRUE in Trovato se la chiave di ricerca C esiste nel campo Chiave (numerico) della

Dettagli

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica Corso di Laurea Ingegneria Informatica Fondamenti di Informatica Dispensa E04 Esempi di algoritmi e programmi C. Limongelli - A. Miola Novembre 2011 1 Contenuti q Somma di una sequenza di numeri interi

Dettagli

Informatica - Laboratorio gennaio 06. Laboratorio. Esercizio 1

Informatica - Laboratorio gennaio 06. Laboratorio. Esercizio 1 Java Esercitazione Laboratorio Esercizio 1 Si crei la classe Esercizio1 che preveda: La generazione di 20 numeri interi casuali compresi tra 1 e 10 import java.util.*;.*; public class Esercizio1 { Random

Dettagli

public String tostring(){ return (riga +" " + colonna +" " + valore); } }//end class terna

public String tostring(){ return (riga +  + colonna +  + valore); } }//end class terna class Terna { int riga; int colonna; int valore; public Terna(int r, int c, int v){ riga = r; colonna = c; valore = v; public int getriga(){ return riga; public int getcolonna(){ return colonna; public

Dettagli

import java.io.*; class Quadrato implements FigureGeometrichePiane { private double lato;

import java.io.*; class Quadrato implements FigureGeometrichePiane { private double lato; Un giardino condominiale è formato da un quadrato di lato 30 metri inscritto in un cerchio. Si vogliono inserire nel quadrato delle piastrelle, anch esse quadrate, di lato 10 centimetri e dal costo di

Dettagli

Corso sul linguaggio Java

Corso sul linguaggio Java Corso sul linguaggio Java Modulo JAVA7 A1 Vector, Arrays e StringBuffer 1 Prerequisiti Programmazione base in Java Utilizzo di classi e oggetti Algoritmi notevoli sul vettore 2 1 Introduzione In questa

Dettagli

Concetti Base Eccezioni Eccezioni e Metodi Gerarchia di Eccezioni. Java: Eccezioni. Damiano Macedonio

Concetti Base Eccezioni Eccezioni e Metodi Gerarchia di Eccezioni. Java: Eccezioni. Damiano Macedonio Dipartimento di Informatica, Università degli Studi di Verona Corso di Programmazione per Bioformatica lezione del 30 maggio 2014 Introduzione Un programma diviso in sezioni distinte Un approccio alla

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

Corso sul linguaggio Java

Corso sul linguaggio Java Corso sul linguaggio Java Modulo JAVA5 B1 Gestione eventi 1 1 Prerequisiti Programmazione base in Java Utilizzo di classi e oggetti AWT o Swing Programmazione ad eventi 2 1 Introduzione Le interfacce create

Dettagli

LETTURA DI DATI DA INPUT. Gli stream di byte consentono già di leggere dati (numeri di vario tipo), tramite la classe DataInputStream

LETTURA DI DATI DA INPUT. Gli stream di byte consentono già di leggere dati (numeri di vario tipo), tramite la classe DataInputStream LETTURA DI DATI DA INPUT Gli stream di byte consentono già di leggere dati (numeri di vario tipo), tramite la classe DataInputStream LETTURA DI DATI DA INPUT Sfortunatamente, una tale classe non esiste

Dettagli

(VHUFLWD]LRQLGLEDVHVXOOH6RFNHWLQ-DYD 6RFNHWGLWLSRVWUHDP

(VHUFLWD]LRQLGLEDVHVXOOH6RFNHWLQ-DYD 6RFNHWGLWLSRVWUHDP (VHUFLWD]LRQLGLEDVHVXOOH6RFNHWLQ-DYD 6RFNHWGLWLSRVWUHDP D (FKR&OLHQWH6HUYHU Sviluppare un applicazione C/S in cui: il server attende una connessione da parte del client (su MDYDQHW6HUYHU6RFNHW), usa la

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

ARRAY BIDIMENSIONALI float [][] mx = new float[3][4]; (float []) [] mx = new float[3][4];

ARRAY BIDIMENSIONALI float [][] mx = new float[3][4]; (float []) [] mx = new float[3][4]; ARRAY BIDIMENSIONALI Si possono definire array di qualunque tipo di dato, quindi anche di altre array float [][] mx = new float[3][4]; ovvero.. (float []) [] mx = new float[3][4]; La loro motivazione (storica)

Dettagli

Pag. 1 di 7. import java.io.*;

Pag. 1 di 7. import java.io.*; Un azienda di CAD 2D deve realizzare un software per elaborare rettangoli, quadrati e triangoli. Delle tre figure geometriche si deve calcolare il perimetro e l area. Realizzare un software, il cui modulo

Dettagli

Studente (Cognome Nome): Corso di Informatica Corso di Laurea in Ingegneria Gestionale a.a. 2006-07 Secondo Compitino 21 Dicembre 2006

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

Dettagli

L istruzione while. while (condition) istruzione

L istruzione while. while (condition) istruzione Iterazioni L istruzione while while (condition) istruzione Ripete l esecuzione di istruzione fino a che la condizione resta vera while (balance < targetbalance) { year++; double interest = balance * rate

Dettagli

Definizione di classi con array di oggetti

Definizione di classi con array di oggetti Definizione di classi con array di oggetti 1. (Esame scritto del 18/9/2002, Esercizio 6.) La banca dati di un agenzia assicurativa per auto è caratterizzata da un insieme di polizze di assicurazioni per

Dettagli

// Variabile utilizzata per eseguire una nuova elaborazione del programma senza riavviarlo.

// Variabile utilizzata per eseguire una nuova elaborazione del programma senza riavviarlo. Un azienda vende 3 prodotti a 56 euro ciascuno e i successivi 8 prodotti a 66 euro. Determinare il prezzo medio di un singolo prodotto. Basare la soluzione del problema su un applet. import java.io.*;

Dettagli