Fondamenti di informatica T-A Esercitazione 2 : Linguaggio Java, basi e controllo del flusso AA 2012/2013 Tutor : Domenico Di Carlo.

Slides:



Advertisements
Presentazioni simili
Programmazione ad oggetti
Advertisements

Funzioni e procedure Ogni linguaggio di programmazione ad alto livello mette a disposizione del programmatore questi strumenti, ed il C non è da meno!
Introduzione al linguaggio C
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità A2 Java: le basi del linguaggio.
MATLAB.
MATLAB. Scopo della lezione Programmare in Matlab Funzioni Cicli Operatori relazionali Esercizi vari.
Algoritmi e Programmazione
Programmazione Ingegneria TLC
Informatica Generale Marzia Buscemi
1 Informatica Generale Susanna Pelagatti Ricevimento: Mercoledì ore presso Dipartimento di Informatica, Via Buonarroti,
Liste Ordinate 3 Maggio Ultima Lezione Abbiamo visto i tipi di dato astratti IntList e StringList Realizzano liste di interi e di stringhe Realizzati.
Lez. 41 Universita' di Ferrara Facolta' di Scienze Matematiche, Fisiche e Naturali Laurea Specialistica in Informatica Algoritmi Avanzati Programmazione.
Introduzione agli algoritmi. Definizione Sistema di regole e procedure di calcolo ben definite che portano alla soluzione di un problema con un numero.
Argomenti dalla linea dei comandi Gli argomenti possono essere passati a qualsiasi funzione di un programma, compresa la main(), direttamente dalla linea.
Algoritmi Politecnico di Milano C Primi programmi Politecnico di Milano.
Informatica 2. Concetti fondamentali di programmazione Programmare vuol dire scrivere un algoritmo in un linguaggio che faccia funzionare un calcolatore.
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Introduzione a JAVA Anno Accademico 2009/2010.
1 Corso di Informatica (Programmazione) Lezione 10 (12 novembre 2008) Programmazione in Java: espressioni booleane e controllo del flusso (selezione)
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) JAVA: funzione di output a video Anno Accademico 2009/2010.
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Le stringhe di caratteri in Java Anno Accademico 2009/2010.
MATLAB. …oggi… Programmare in Matlab Programmare in Matlab m-file m-file script script Funzioni Funzioni Cicli Cicli Operatori relazionali Operatori relazionali.
MATLAB.
MATLAB. …oggi… Programmare in Matlab Programmare in Matlab Funzioni Funzioni Cicli Cicli Operatori relazionali Operatori relazionali Esercizi vari Esercizi.
Lezione 4: Costrutti Condizionali Prof. Raffaele Montella.
Fondamenti di Informatica I a.a Il linguaggio C Il controllo di flusso La selezione condizionale Listruzione switch I cicli Le istruzioni break,
Procedure e funzioni nei linguaggi di alto livello Lab Programmazione - turno /2006.
Selezione (=scelta) con “if-else”
Primi programmi in Java
Primi Elementi di Programmazione in C++
LA DOCUMENTAZIONE È noto che un buon programma dovrebbe essere ben documentato.. ma lesperienza insegna che quasi mai ciò viene fatto! –non cè tempo, ci.
Corso di PHP.
Programmazione in Java
Programmazione in Java Claudia Raibulet
Java Contardi Carlo A.S. 2008/09.
Esercizio 10.* Un cassiere vuole dare un resto di n centesimi di euro usando il minimo numero di monete. a) Descrivere un algoritmo goloso per fare ciò.
PROGRAMMAZIONE: linguaggi
Prova di verifica Fondamenti Informatica 1 15 Febbraio 2008.
Problema dell’ordinamento di un array: Il metodo Bubble Sort.
I Metodi in Java Il termine "metodo" è sinonimo di "azione". Quindi, affinché un programma esegua qualche istruzione, deve contenere metodi.
BIOINFO3 - Lezione 201 Come in ogni corso di introduzione ad un linguaggio di programmazione, proviamo a scrivere lormai celebre primo programma di prova.
1Piero Scotto - C14. Finalità del corso Programma Materiale Requisiti Spendibilità 2Piero Scotto - C14.
Corso JAVA Lezione n° 12 Istituto Statale di Istruzione Superiore “F. Enriques”
ISTITUTO STATALE DI ISTRUZIONE SUPERIORE F. ENRIQUES CORSO JAVA – PROVA INTERMEDIA DEL 12 MARZO 2007 NOME: COGNOME: ________________________________________________________________________________.
Corso di Programmazione in Java – Esercizio n° 001
1 Applet ed HTML Fondamenti di Informatica Corso D.
Una "vera" classe.. ..un esempio pratico: la calcolatrice
Esercitazioni su liste
Corso JAVA Lezione n° 03 Istituto Statale di Istruzione Superiore “F. Enriques”
1 Corso di Informatica (Programmazione) Lezione 8 (7 novembre 2008) Programmazione in Java: operatori aritmetici, operatori di assegnamento e cast.
Introduzione a Javascript
Variabili Numeriche –Interi (byte, short, int, long): complemento a 2 –A virgola mobile (float, double): IEEE 745 Alfanumeriche –Carattere (char): Unicode.
Strutture di controllo Esercizi!. Utilizzare i metodi: I modi per poter richiamare un metodo, di una classe (ad esempio SavitchIn) sono due. 1) E’ sempre.
Ripasso su Java. Introduzione Per risolvere problemi complessi, i linguaggi di programmazione forniscono costrutti per realizzare nuove funzioni che trasformino.
Sommario Oggetti immutabili e non Tipi Primitivi: String, Arrays.
Linguaggio C: Le basi Stefano Cagnoni e Monica Mordonini
1 Informatica Generale Marzia Buscemi Ricevimento: Giovedì ore , Dipartimento di Informatica, stanza 306-PS o per posta.
Informatica e Informatica di Base
Informatica 4 La ricorsione. Definizione di ricorsione Ricorsione è la proprietà di quei programmi che, all’interno delle istruzioni che li compongono,
Fondamenti di informatica T-A Esercitazione 5 : Stringhe ed array AA 2012/2013 Tutor : Domenico Di Carlo.
Fondamenti di informatica T-A Esercitazione 1 : Introduzione AA 2012/2013 Tutor : Domenico Di Carlo.
1 Java primo contatto Quando le classi fanno la differenza …
Fondamenti di informatica T-A Esercitazione 3 : Classi, metodi, visibilità, metodi statici AA 2012/2013 Tutor : Domenico Di Carlo.
Il C `e un linguaggio di programmazione di uso generale, originariamente sviluppato per la scrittura del sistema operativo Unix, ed oggi disponibile su.
13/08/02Input 1 Interagire con il computer Da tastiera Da riga di comando Funzioni di conversione.
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Esercitazione pre 1ma prova in itinere Marco D. Santambrogio – Ver. aggiornata.
Input in Java. Uso Scanner Un oggetto per la lettura dalla tastiera Piuttosto, per rappresentare la tastiera del nostro calcolatore useremo un oggetto.
Basi di Java Strutture base di Java. Basi di java ▪Variabili ▪Operatori ▪Condizioni e Cicli ▪Array.
Introduzione alle Classi e agli Oggetti in Java 1.
Transcript della presentazione:

Fondamenti di informatica T-A Esercitazione 2 : Linguaggio Java, basi e controllo del flusso AA 2012/2013 Tutor : Domenico Di Carlo

Hello World Si consiglia caldamente di utilizzare dispositivi rimovibile per salvare il proprio lavoro (Pennine USB o simili) Creiamo un file vuoto e chiamiamolo Esercitazione2.java Apriamo il file e scriviamoci dentro il seguente codice : public class Esercitazione2 { public static void main(String args[]) { System.out.println(“Ciao Mondo!”); } Ricordiamo che la classe che andiamo a creare deve essere chiamata allo stesso modo del file nel quale è contenuta !! Fondamenti di informatica A-K - Domenico Di Carlo 2

Compilazione Hello World Ora che abbiamo il nostro primo file sorgente Esercitazione2.java, proviamo a compilarlo ! Per compilare, apriamo il prompt dei comandi come abbiamo visto nella scorsa esercitazione, raggiungiamo il direttorio nel quale è contenuto il file Esercitazione2.java ed utilizziamo il seguente comando :  javac Esercitazione2.java Una volta eseguito questo comando, il compilatore java avrà creato il file Esempio2.class contenente il bytecode della classe Esempio2.java Per lanciarlo, eseguiamo il seguente comando :  java Esercitazione2 Nel prompt, dovrebbe apparire la stringa : "Ciao mondo!" Fondamenti di informatica A-K - Domenico Di Carlo 3

Variabili ed espressioni Il linguaggio consente di definire variabili: int a = 10; Di valutare espressioni: 2*a + 1 Di effettuare assegnamenti: int b = 2*a +1 Stampare a video: System.out.println(“testo”) System.out.println(“testo” + variabile) L’operatore “+” permette anche di concatenare stringhe. Fondamenti di informatica A-K - Domenico Di Carlo 4

Tipo primitivi in Java Fondamenti di informatica A-K - Domenico Di Carlo 5 Java conosce di base alcuni tipi di dato. Questi tipi primitivi sono utilizzabili direttamente, senza nessuna definizione. Sono ovviamente necessari per definire variabili, espressioni, assegnamenti etc. Di seguito c'è uno schema riassuntivo

Provate voi ! Ora che siete diventati degli esperti con Java, provate voi ! Modificate il file precedente in modo da contenere non più la stampa a video di «Ciao Mondo» bensì faccia la somma tra due numeri. Definite quindi tre variabili di tipo intero. ▫ Le prime due saranno gli addendi ▫ La terza sarà il risultato della somma delle prime due Stampate a video il risultato ottenuto Nella prossima slide c'è la soluzione, prova a non sbirciare. Ne va del vostro esame !! Fondamenti di informatica A-K - Domenico Di Carlo 6

Avete provato ? Ecco la soluzione del semplice esercizio precedente : public class Somma { public static void main(String args[]) { int a = 3; int b = 4; int risultato = a + b; System.out.println("La somma vale: " + risultato); } Fondamenti di informatica A-K - Domenico Di Carlo 7

Controllo del flusso Il codice che noi scriviamo in Java non deve essere così limitato e monolitico. Vengono in nostro aiuti tutti quei costrutti, tutte quelle strutture sintattiche proprie del linguaggio che permettono di realizzare alcuni passaggi base della programmazione: vi sono costrutti per i cicli, per le condizioni, ecc... Questo permette di modellare il flusso di esecuzione a nostro piacere. Vediamo subito un esempio. Fondamenti di informatica A-K - Domenico Di Carlo 8

Esercizio Scrivere un semplicissimo programma Java che prenda in input tre numeri interi e li stampi in ordine decrescente. La logica da seguire è : ▫ Leggo i 3 numeri ▫ Confronto il primo con il secondo tramite un if e determino il maggiore dei due. Nell’else determino ovviamente l’altro caso. ▫ Confronto il terzo numero con il maggiore precedentemente trovato e con il minore precedente.  Se il terzo è maggiore del maggiore precedentemente trovato vuol dire che il primo diventa secondo e che il secondo diventa terzo  Se il terzo è minore del minore precedentemente trovato vuol dire che il primo ed il secondo rimangono invariati ed il più piccolo tra i tre è proprio il terzo  L’unico altro caso possibile è che il terzo sia l’intermedio tra i tre e quindi il secondo deve diventare terzo ed il terzo deve diventare secondo. Lo so che sembra complicato detto così ma in realtà è una sciocchezza vera e propria, vediamo il codice relativo ! Fondamenti di informatica A-K - Domenico Di Carlo 9

Ordinamento decrescente 1/2 import java.util.Scanner; public class Prova { public static void main(String args[]){ System.out.println("Inserisci 3 numeri"); Scanner tastiera = new Scanner(System.in); int a = tastiera.nextInt(); int b = tastiera.nextInt(); int c = tastiera.nextInt(); int primo, secondo, terzo; if ( a > b ) { primo = a; secondo = b; } else { primo = b; secondo = a; } Fondamenti di informatica A-K - Domenico Di Carlo 10

Ordinamento decrescente 2/2 if ( c > primo ) { terzo = secondo; secondo = primo; primo = c; } else { if ( c < secondo ) terzo = c; else { terzo = secondo; secondo = c; } System.out.println("I numeri immessi ordinati in ordine decrescente sono : " + primo +", " + secondo + ", " + terzo); } Fondamenti di informatica A-K - Domenico Di Carlo 11

Ultimo esercizio Dal tabaccaio un utonto arriva e compra cose a caso per l’ammontare di una certa cifra che chiameremo totale. L’utonto paga il totale con una banconota a scelta Il tabaccaio cerca di dare il resto all’utonto utilizzando tagli di banconote più grandi possibile. Quindi, se per esempio l’utonto deve: ▫ pagare 13 euro ed ha una banconote da 50 euro ▫ non deve ricevere 3 pezzi da 10, 1 da 5 e 2 da 1 euro. ▫ Bensì 1 da 20, 1 da 10, 1 da 5 e 1 da 2. Supponiamo per semplicità che i centesimi non esistano (quindi si usano int e non float) e che la banconota massima che l’utonto ha a disposizione sia un pezzo da 50 euro. Fondamenti di informatica A-K - Domenico Di Carlo 12

Provate voi ! La soluzione sarà pubblicata nei prossimi giorni sul sito del corso. Intanto voi arrovellatevi il cervello. Tips & tricks : ▫ Acquisire il totale e la banconota dell’utonto con Scanner ▫ Calcolare il resto da dare come totale – banconota ▫ If ( c’èancorarestodadare )  [dosomething] ▫ Else  [dosomethingelse ] Fondamenti di informatica A-K - Domenico Di Carlo 13