Fondamenti di informatica T-1 (A K) Esercitazione 6: Eclipse
|
|
|
- Ottavia Marrone
- 6 anni fa
- Visualizzazioni
Transcript
1 Fondamenti di informatica T-1 (A K) Esercitazione 6: Eclipse AA 2018/2019 Tutor
2 2 Esercitazione 6 Introduzione al calcolatore e Java Linguaggio Java, basi e controllo del flusso Eclipse ed esercizi di consolidamento Stringhe ed array Metodi, classi, oggetti Ereditarietà e polimorfismo Collezioni Java e interfacce Esercizi d esame
3 3 Eclipse Cos è? Un ambiente di sviluppo integrato (IDE) contenente: un editor di codice sorgente; un compilatore e un interprete; un debugger. Come scaricarlo ed installarlo? Scaricarlo gratuitamente dal sito (versione IDE for Java Developers): Estrarre l archivio Eseguire il.exe
4 4 Eclipse Avviate Eclipse tramite il file eclipse.exe. In laboratorio Eclipse ha l icona mostrata a lato (primo risultato) A casa avrete un simbolo simile a quello mostrato ne secondo risultato qui a lato.
5 5 Primo avvio, scelta workspace Workspace: cartella che contiene i progetti In laboratorio la vostra home oppure un dispositivo di archiviazione esterno A casa cartella a scelta, Eclipse sceglie automaticamente la home dell'utente (C:\Users\nome_utente\Workspace) Se non compare questa finestra, non c è problema: Eclipse vi ha già selezionato una cartella come workspace.
6 6 Primo avvio, messaggio di benvenuto 2 - Click 1 - Deselezionare
7 7 Creazione progetto Il primo progetto: Creazione di un nuovo progetto File New Java Project
8 8 Creazione progetto Nome del progetto Esercitazione06 Poi click su Finish
9 9 Creazione classe Sulla sinistra, compare un albero di cartelle. La cartella src conterrà i vostri file sorgente. Selezionate src e aggiungete una nuova classe tramite: File New Class
10 10 Creazione classe Sulla destra, potete scrivere il vostro programma java. Rispetto a notepad, ci sono molti vantaggi, tra cui: syntax highlighting indentazione automatica (ctrl + A e poi ctrl + shift + F) e molti altri...
11 11 Hello World
12 12 Compilazione ed esecuzione Non c'è bisogno di compilare ed eseguire il programma separatamente. Eclipse esegue javac in automatico. Esegue java alla pressione del tasto play. L'output dell eseguibile verrà stampato in basso nella finestra Console.
13 13 Dove sono i miei file? Eclipse salva sul filesystem i file sorgenti, e anche i file.class che genera automaticamente. In questo caso, nel percorso...\workspace\esercitazione06 troveremo: src contiene i file.java che avete scritto; bin contiene i file.class che genera automaticamente: non c è nulla di magico!
14 14 Eclipse: Errori Ogni volta che salvate una modifica, Eclipse prova a compilare automaticamente il codice. Se trova errori, ve li segnala. Per compilare, non devono esserci errori.
15 15 Eclipse: Warning Un warning è meno grave di un errore? In generale: sì, perché la compilazione può avvenire. Nel nostro caso, NO: probabilmente abbiamo sbagliato qualcosa! (tranne alcuni casi particolari, che vedremo) Quindi è fondamentale capire e risolvere anche i warning del compilatore. In questo caso Eclipse segnala che il codice che abbiamo scritto non ha speranze di essere mai eseguito. Qui è banale, ma basta poco per complicare molto la situazione.
16 16 Iterazione Tre possibilità: while( a > 5 ) {... ; } do {... ; } while( a > 5 ); for(int i=0; i < 5; i++){... ; }
17 17 Esercizio 1 SommaSequenza (1/2) Realizzare un programma che prende in input una sequenza di cifre (tra 1 e 9) e calcola la somma massima fra le sottosequenze di cifre non decrescenti. Il programma termina quando viene inserito lo 0. Per semplicità, supponiamo di non controllare la correttezza dell input. Esempio:
18 18 Esercizio 1 SommaSequenza (2/2) Di che valori devo tenere traccia? Devo accorgermi di quando il valore appena letto è più piccolo del precedente. In tal caso, devo confrontare la somma corrente con quella massima, e ripartire con una nuova somma
19 19 Soluzione SommaSequenza import java.util.scanner; public class Esercitazione06 { public static void main(string[] args) { int cur_val = 0, old_val = 0, somma = 0, somma_max = 0; Scanner tastiera = new Scanner(System.in); do { System.out.print("Inserisci un intero: "); cur_val = tastiera.nextint(); Perché questa parentesi? A chi viene riferito else? if(cur_val < old_val) { if( somma > somma_max) somma_max = somma; somma = cur_val; } else somma = somma + cur_val; } } old_val = cur_val; } while(cur_val!= 0); System.out.println("Massima somma trovata: "+ somma_max);
20 20 Eclipse: debugging Funzionalità estremamente utile offerta da Eclipse: consente di seguire passo passo il flusso di esecuzione del programma: così è molto più facile trovare errori. Proviamo a usare il debugger per l esempio appena visto. Prima di tutto, dobbiamo scegliere da quale riga effettuare il debug e collocare un breakpoint in corrispondenza di essa: basta fare doppio click sull area azzurra che corrisponde alla riga da cui si vuole partire.
21 21 Eclipse: debugging Funzionalità estremamente utile offerta da Eclipse. Consente di seguire passo passo l esecuzione del programma: così è molto più facile trovare errori. Proviamo a usare il debugger per l esempio appena visto.
22 22 Ambiente di debugging Comandi di debug (vedi prossima slide) Prossima riga da eseguire Coppie variabile/valore definite nell ambiente corrente Console per visualizzare l output
23 23 Ambiente di debugging Play. Esegue direttamente tutti i passi fino al breakpoint successivo (se non c è, fino alla fine). 2. Stop. Termina l esecuzione del programma immediatamente 3. Step into. Passa ad eseguire la riga successiva; se la riga corrente prevede l invocazione di un metodo, prosegue il debug sul codice del metodo. 4. Step over. Passa ad eseguire la riga successiva. 5. Step return. Riprende l esecuzione dalla riga successiva a quella che ha portato all invocazione del metodo usato correntemente.
24 24 Eclipse: debugging Quando una variabile assume un nuovo valore, si evidenzia la riga corrispondente nella vista Variabili. Molto utile per controllare l esecuzione di cicli: si può vedere l evoluzione di indici e accumulatori.
25 25 Esercizio 2 Formula (1/2) Si realizzi un programma che legga un intero N da tastiera, e stampi a video il risultato della seguente sommatoria: N i=0 ( 1) i 4 2 i + 1 Cosa ottengo con questa formula? Una volta calcolato e stampato il valore a video, il programma deve chiedere un nuovo numero all utente e ripetere il calcolo. Il programma deve terminare solo qualora l utente inserisca un valore negativo.
26 26 Esercizio 2 Formula (2/2) N i=0 ( 1) i 4 2 i + 1 Cosa ottengo con questa formula? Provare a vedere cosa accade aumentando progressivamente il valore di N (10, 100,..., 10000) dal punto di vista del risultato (come cambia?) dal punto di vista del tempo impiegato (risponde sempre subito?) Qual è il valore massimo che potete inserire? Perché?
27 27 Esercizio 3 Fattoriali Scrivere un programma che permetta di: Chiedere all utente quanti numeri vuole inserire Leggere i numeri inseriti dall utente e calcolare la somma dei fattoriali Esempio: l utente vuole inserire 3 numeri: 4, 3, 6 Il programma deve calcolare 4! + 3! + 6! = 750 Seguire l esecuzione del programma con l uso del debugger di Eclipse.
28 28 Esercizio 4 Sequenze0e1 Realizzare un programma che prende in input una sequenza di caratteri 0 e 1 e conta la lunghezza della più lunga sotto-sequenza di 0 di fila. L inserimento della sequenza termina quando si inserisce un carattere diverso da 0 e 1. A quel punto, si stampa a video il valore trovato. Seguire l esecuzione del programma con l uso del debugger di Eclipse.
29 29 Esercizio 5 ValoriPositivi Si scriva un programma che legga da utente una sequenza di al massimo 10 valori positivi (si scartino i negativi). L utente può terminare prima inserendo lo 0. Il programma deve stampare: 1. il numero di valori positivi letti 2. il numero di valori scartati 3. la somma di tutti i valori positivi 4. L elemento maggiore della sequenza dei positivi 5. L elemento minore della sequenza dei positivi Seguire l esecuzione del programma con l uso del debugger di Eclipse.
Fondamenti di informatica T-1 (A K) Esercitazione 2 Basi del linguaggio Java
Fondamenti di informatica T-1 (A K) Esercitazione 2 Basi del linguaggio Java AA 2018/2019 Tutor Lorenzo Rosa [email protected] 2 Programma Introduzione al calcolatore e Java Linguaggio Java, basi e
Lab 04 Programmazione Strutturata"
Fondamenti di Informatica e Laboratorio T-AB Ingegneria Elettronica e Telecomunicazioni Lab 04 Programmazione Strutturata" Lab04 1 Valutazione in cortocircuito (1)" In C, le espressioni booleane sono valutate
Fondamenti di Informatica T-1 Modulo 2
Fondamenti di Informatica T-1 Modulo 2 Obiettivi di questa lezione 1. Valutazione in cortocircuito 2. If e if innestati 3. Switch 4. Cicli Valutazione in cortocircuito In C, le espressioni booleane sono
NOTE SULL USO DI ECLIPSE per la compilazione di programmi c
Università degli Studi di Firenze - Scuola di Ingegneria Corso di Laurea in Ingegneria Elettronica e delle Telecomunicazioni Fondamenti di Informatica - Anno Accademico 2018/2019 Docente: Ing. Laura Carnevali
Lab 01 Introduzione a Codelite
Fondamenti di Informatica e Laboratorio T-AB e Fondamenti di Informatica T1 Ingegneria Elettronica e Telecomunicazioni e Ingegneria dell Automazione a.a. 2011/2012 Lab 01 Introduzione a Codelite Lab01
Laboratorio di informatica Ingegneria meccanica
Laboratorio di informatica Ingegneria meccanica Esercitazione 6 7 novembre 2007 Correzione di un programma Un programma può contenere errori sintattici e/o errori logici. Gli errori sintattici vengono
Installazione. Eclipse. Workspace. Primo Avvio. Fondamenti di Informatica T2 Modulo 2. Università di Bologna A.A. 2008/2009
Università degli Studi di Bologna Facoltà di Ingegneria Fondamenti di Informatica T2 Modulo 2 Corso di Laurea in Ingegneria Informatica Anno accademico 2008/2009 Integrated Development Environment (IDE)
do { printf("inserisci due numeri reali:"); scanf("%f %f", &a, &b); while(b!=0 && a/b<0);
Obiettivi di questa esercitazione Fondamenti di Informatica T-1 modulo 2 Laboratorio 02 1. Valutazione in cortocircuito i 2. If innestati 3. Switch 4. Cicli 5. Funzioni e Header File 1 2 Valutazione in
A.A Laboratorio n 1 Ing. Gian Enrico Conti. Milano, XX mese 20XX
Informatica Titolo ed Elementi presentazione di Informatica Medica sottotitolo A.A. 2018-19 Laboratorio n 1 Ing. Gian Enrico Conti Milano, XX mese 20XX Info Logistiche Contatti: [email protected]
2 Lavorare con Eclipse
Corso Eclipse 2 Lavorare con Eclipse 1 Prerequisiti Conoscenza elementare ambiente Eclipse Compilare ed eseguire semplici applicazioni Java Conoscere i tipici errori di programmazione Individuare errori
Corso: Fondamenti di Informatica (Gruppo 2) a.a Corsi di laurea: Ing. Settore Informazione
Corso: Fondamenti di Informatica (Gruppo 2) a.a. 2017-18 Corsi di laurea: Ing. Settore Informazione Questionario a Risposte Multiple per auto-valutazione del Lab05 Domanda n. 1 Argomento: Iterazioni, array
Introduzione a Visual Studio 2005
Fondamenti di Informatica e Laboratorio T-AB Ingengeria dell Automazione a.a. 2008/2009 Introduzione a Visual Studio 2005 Outline Solutions e Projects Visual Studio e il linguaggio C Visual Studio Schermata
Debug di un programma
Debug di un programma Col termine Debug si intende una fase di sviluppo del software, nella quale si cerca di eliminare gli errori dal programma Due tipi di errori: Errori sintattici, rilevati sempre dal
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
Fondamenti di Informatica T-1 Modulo 2
Fondamenti di Informatica T-1 Modulo 2 Obiettivi di questa lezione 1. Valutazione in cortocircuito 2. If e if innestati 3. Switch 4. Cicli Valutazione in cortocircuito In C, le espressioni booleane sono
Esercizi in Python. Docente: Domenico Daniele Bloisi
Esercizi in Python Docente: Domenico Daniele Bloisi http://profs.scienze.univr.it/~bloisi/asl/asl.html Esercizio 1 Utilizzare il linguaggio di programmazione Python per stampare a video la scritta "prima
Fondamenti di Informatica AA 2016/2017
Fondamenti di Informatica AA 2016/2017 Eng. Ph.D. Michela Paolucci DISIT Lab http://www.disit.dinfo.unifi.it Department of Information Engineering, DINFO University of Florence Via S. Marta 3, 50139, Firenze,
ISTRUZIONI DEVC++ Autore: Luca Florio (luca.florio<at>polimi.it)
ISTRUZIONI DEVC++ Autore: Luca Florio (luca.floriopolimi.it) DevC++ è un ambiente di programmazione scaricabile gratuitamente che fornisce funzionalità per la creazione di applicativi in linguaggio
Tutorato di Fondamenti di Informatica TUTOR: DAVIDE GHIANI, GIULIA ORRU
Tutorato di Fondamenti di Informatica PROFESSORE: GIAN LUCA MARCIALIS TUTOR: DAVIDE GHIANI, GIULIA ORRU Organizzazione Informazioni di contatto: [email protected] Davide Ghiani Giulia Orrù
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
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
Esercitazione di Reti degli elaboratori
Esercitazione di Prof.ssa Chiara Petrioli Christian Cardia, Gabriele Saturni Cosa vedremo in questa lezione? Gli Array Gli array multidimensionali Le stringhe I puntatori Esercizi Pagina 1 Gli Array Definizione
Fondamenti di Informatica T-1
Fondamenti di Informatica T-1 Introduzione al linguaggio Java - Input/Output, Variabili, Tipi Tutor: Allegra De Filippo [email protected] a.a. 2015/2016 Fondamenti di Informatica T-1 Allegra De
Algebra di Boole: Concetti di base. E un algebra basata su tre operazioni logiche
Fondamenti di Informatica Algebra di Boole: Concetti di base Fondamenti di Informatica - D. Talia - UNICAL Algebra di Boole E un algebra basata su tre operazioni logiche OR AND NOT Ed operandi che possono
Il compilatore Dev-C++
Il compilatore Dev-C++ Compilatore per Windows: http://www.bloodshed.net/dev/index.html Oppure dal sito: http://web.tiscali.it/no-redirect-tiscali/adinfo/devcpp4970- gcc295.exe Informatica 1 1 Requisiti
Esplorare e modificare il file system Compilare con gcc Lanciare un programma da linea di comando
Eclipse: Cos è? Utilizzare Eclipse: Creare un progetto Creare file sorgenti nel progetto Compilare Lanciare il programma Strumenti alternativi agli IDE La linea di comando su Linux Esplorare e modificare
Università degli studi di Roma Tor Vergata Ingegneria Medica Informatica I Programma del Corso
Obiettivi Di seguito vengono riportate una serie di domande che possono essere poste durante la prova formale del corso. Le seguenti domande non sono da ritenersi esaustive ma esemplificative. 1. Architettura
COSTRUZIONE DI UN APPLICAZIONE
COSTRUZIONE DI UN APPLICAZIONE Per costruire un applicazione occorre: compilare il file (o i file se più d uno) che contengono il testo del programma (file sorgente) Il risultato sono uno o più file oggetto.
6 - Blocchi e cicli. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo
6 - Blocchi e cicli Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://pages.di.unipi.it/milazzo milazzo di.unipi.it
FONDAMENTI DI INFORMATICA
FONDAMENTI DI INFORMATICA Prof. Alfredo Accattatis Slide (rielaborate) del prof. Emiliano Casalicchio [email protected] Esercizio (1) Dati due vettori V1 e V2 scrivere un algoritmo che permetta
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[]
Primo programma in C
Primo programma in C Struttura minima di un file C Applicazioni C in modo console Struttura del programma Commenti Direttive #include Definizione di variabili Corpo del main 2 Struttura minima di un file
A. Ferrari. informatica. Java basi del linguaggio. Alberto Ferrari Informatica
informatica Java basi del linguaggio Alberto Ferrari Informatica struttura di un programma Java /** * Classe EsempioProgramma * Un esempio di programmazione in Java * @author 4A Informatica */ public class
Tutorial su Codelite. Luca Ceriani 2011 Federico Cerutti
Tutorial su Codelite Luca Ceriani 2011 Federico Cerutti Sommario Creare un nuovo workspace Creare un primo progetto all interno di un workspace
Fondamenti di Informatica e Laboratorio T-AB e Fondamenti di Informatica T1 Ingegneria Elettronica e Telecomunicazioni e Ingegneria dell Automazione
Fondamenti di Informatica e Laboratorio T-AB e Fondamenti di Informatica T1 Ingegneria Elettronica e Telecomunicazioni e Ingegneria dell Automazione Lab 03 Istruzioni" Lab03 1 Esercizio 1" n Realizzare
Indice. Prefazione. 3 Oggetti e Java 53
Prefazione xv 1 Architettura dei calcolatori 1 1.1 Calcolatori e applicazioni 1 1.1.1 Alcuni esempi di applicazioni 3 1.1.2 Applicazioni e interfacce 4 1.2 Architettura dei calcolatori 7 1.2.1 Hardware
Guida introduttiva su Eclipse. Ing. Marco Dell'Unto [email protected]
Guida introduttiva su Eclipse Ing. Marco Dell'Unto [email protected] Introduzione Eclipse è un ambiente di sviluppo (IDE) multilinguaggio e multipiattaforma scritto in Java. E Open Source. Può
Corso di Laurea Ingegneria Informatica Laboratorio di Informatica
Corso di Laurea Ingegneria Informatica Laboratorio di Informatica Capitolo 4 Traduzione ed esecuzione di programmi Ottobre 2006 Traduzione ed esecuzione di programmi 1 Nota bene Alcune parti del presente
Parte 1: tipi primitivi e istruzioni C
Parte 1: tipi primitivi e istruzioni C Esercizio 1 Scrivere un programma che stampa la somma di una sequenza di N numeri inseriti dall utente. Esercizio 2 Scrivere un programma che stampa la somma di una
Fondamenti di Informatica II 6. Esercitazioni Laboratorio 1
Costruzione di un file eseguibile ( build ) Fondamenti di Informatica II 6. Esercitazioni Laboratorio 1 Un editor e un word processor specializzato e usato per preparare i moduli sorgenti nel linguaggio
