Programmazione in Java (I modulo) Lezione 3: Prime nozioni

Documenti analoghi
Le variabili. Olga Scotti

Dall Algoritmo al Programma. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni

Programmare in Java. Olga Scotti

Nascita di Java. Che cos e Java? Caratteristiche di Java. Java: linguaggio a oggetti

Java:Struttura di Programma. Fabio Scanu a.s. 2014/2015

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:

Università di Torino Facoltà di Scienze MFN Corso di Studi in Informatica. Programmazione I - corso B a.a prof.

3 - Variabili. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

Fasi di creazione di un programma

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica

Funzioni in C. Violetta Lonati

Sommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi.

Esercizi su. Funzioni

INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI

Introduzione al MATLAB c Parte 2

Metodologie di programmazione in Fortran 90

Programmazione in Java Parte I: Fondamenti

La selezione binaria

Concetto di Funzione e Procedura METODI in Java

Algebra di Boole: Concetti di base. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica

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

Introduzione alla programmazione in C

Gli array. Gli array. Gli array. Classi di memorizzazione per array. Inizializzazione esplicita degli array. Array e puntatori

Alcune regole di base per scrivere un programma in linguaggio C

La prima applicazione Java. Creazione di oggetti - 1. La prima applicazione Java: schema di esecuzione. Gianpaolo Cugola - Sistemi Informativi in Rete

Lezione 8. La macchina universale

4 3 4 = 4 x x x 10 0 aaa

Descrizione di un algoritmo

Linguaggi e Paradigmi di Programmazione

12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP)

Struttura di un programma Java

Algoritmo. I dati su cui opera un'istruzione sono forniti all'algoritmo dall'esterno oppure sono il risultato di istruzioni eseguite precedentemente.

Variabili e tipi di dato

Linguaggio C. Fondamenti. Struttura di un programma.

RAPPRESENTAZIONE GRAFICA DEGLI ALGORITMI

Matematica - SMID : Programmazione Febbraio 2009 FOGLIO RISPOSTE

I file di dati. Unità didattica D1 1

Codifica: dal diagramma a blocchi al linguaggio C++

Per scrivere una procedura che non deve restituire nessun valore e deve solo contenere le informazioni per le modalità delle porte e controlli

Java: Compilatore e Interprete

Processo di risoluzione di un problema ingegneristico. Processo di risoluzione di un problema ingegneristico

Corso di Informatica

10 - Programmare con gli Array

Introduzione a Visual Basic Lezione 1 Concetti base e istruzioni condizionali

Laboratorio di Informatica

COS È UN LINGUAGGIO? LINGUAGGI DI ALTO LIVELLO LA NOZIONE DI LINGUAGGIO LINGUAGGIO & PROGRAMMA

Prova di Laboratorio di Programmazione

Analizzatore lessicale o scanner

Programmazione in Java e gestione della grafica (I modulo) Lezione 1: Presentazione corso

LINGUAGGI DI PROGRAMMAZIONE

Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati

I sistemi di numerazione

Testi di Esercizi e Quesiti 1

USO DI EXCEL CLASSE PRIMAI

13 - Gestione della Memoria nella Programmazione Orientata agli Oggetti

Esercitazione n 4. Obiettivi

Scopo della lezione. Informatica. Informatica - def. 1. Informatica

Introduzione. Informatica B. Daniele Loiacono

Lezione 2 OPERAZIONI ARITMETICHE E LOGICHE ARCHITETTURA DI UN ELABORATORE. Lez2 Informatica Sc. Giuridiche Op. aritmetiche/logiche arch.

SOFTWARE. È l insieme delle istruzioni che è necessario fornire alla macchina per il suo funzionamento. Vi sono due categorie di software:

Linguaggi per COMUNICARE. Il linguaggio è un sistema codificato di segni che consente la comunicazione, intesa come scambio di informazioni

Appunti del corso di Informatica 1. 6 Introduzione al linguaggio C

Le equazioni. Diapositive riassemblate e rielaborate da prof. Antonio Manca da materiali offerti dalla rete.

GESTIONE INFORMATICA DEI DATI AZIENDALI

Nozione di algoritmo. Gabriella Trucco

Appunti di Sistemi Elettronici

Arduino: Programmazione

Introduzione a Dev-C++

Corso di Informatica

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo.

Capitolo Quarto...2 Le direttive di assemblaggio di ASM Premessa Program Location Counter e direttiva ORG

Eclipse - Nozioni Base

Appunti del corso di Informatica 1 (IN110 Fondamenti) 6 Introduzione al linguaggio C

LABORATORIO DI PROGRAMMAZIONE EDIZIONE 1, TURNO B

Aritmetica dei Calcolatori 2

- Algoritmi ed esecutori di algoritmi - ALGORITMI MACCHINA DI VON NEUMANN

Insegnamento di Informatica CdS Scienze Giuridiche A.A. 2006/7. Il trattamento dei dati

Esercizi di JavaScript

LABORATORIO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO V Indice

Algoritmi di Ricerca. Esempi di programmi Java

I Problemi e la loro Soluzione. Il Concetto Intuitivo di Calcolatore. Risoluzione di un Problema. Esempio

Gian Luca Marcialis studio degli algoritmi programma linguaggi LINGUAGGIO C

Uso di JUnit. Fondamenti di informatica Oggetti e Java. JUnit. Luca Cabibbo. ottobre 2012

Appunti di Informatica 1

Approccio stratificato

3. La sintassi di Java

Informazione analogica e digitale

Siti web centrati sui dati Architettura MVC-2: i JavaBeans

10.1. Un indirizzo IP viene rappresentato in Java come un'istanza della classe InetAddress.

Algoritmi, dati e programmi

Eclipse. Avviare un progetto e compilare un semplice programma

Elementi di semantica operazionale

Appunti sulla Macchina di Turing. Macchina di Turing

Reflection in Java. Linguaggi Corso M-Z - Laurea in Ingegneria Informatica A.A

Esempio: dest = parolagigante, lettere = PROVA dest (dopo l'invocazione di tipo pari ) = pprrlogvgante

Anno 1. Definizione di Logica e operazioni logiche

GUIDA DETTAGLIATA ALL ACQUISIZIONE DELL ACCOUNT GMAIL.

Transcript:

Programmazione in Java (I modulo) Lezione 3: Prime nozioni

La volta scorsa Abbiamo avuto un primo assaggio! Abbiamo visto come usare l editor per scrivere un programma Java. Abbiamo analizzato riga per riga due semplici programmi Java. Abbiamo provato a compilare e a correggere gli errori di un programma Java.

Compilare un Programma o una Classe Un programma Java consiste di una o più classi che devono essere compilate prima di eseguire il programma. Non occorre compilare le classi che sono fornite da Java (System,Scanner,.). Un package è una libreria di classi già definite import java.util.scanner;

Compilare ed Eseguire Ogni classe deve stare in un file distinto. Il nome del file deve essere lo stesso del nome della classe con suffisso.java Quando compilo un programma Java viene creato un file in linguaggio byte-code che ha lo stesso nome ma il suffisso viene cambiato da.java a.class.

Compilare ed Eseguire Un programma Java può essere composto da numerose classi. La classe da eseguire deve contenere da qualche parte nel file le parole public static void main(string[] args)

Nella lezione di oggi Ricominciamo tutto in modo più formale!

Terminologia Un programma è una sequenza di istruzioni che verranno eseguite dal computer. La persona che scrive il programma è il programmatore (programmer). La persona che interagisce (usa) il programma è l utente (user).

Terminologia Un programma viene scritto in un linguaggio detto linguaggio di programmazione. Il compilatore (interprete) lo traduce in linguaggio macchina, perchè possa essere eseguto dal computer. Perchè il programma possa essere compreso dal compilatore deve essere ben scritto e rispettare tutte le regole grammaticali del linguaggio di programmazioni. Tali regole sono chiamate la sintassi del linguaggio.

Programmare Programmare è un processo creativo Bisogna imparare delle tecniche standard e integrarle con le soluzioni dei problemi che vogliamo risolvere. Tali tecniche di programmazione sono poi applicabili a quasi tutti i linguaggi di programmazine (Java incluso).

Algoritmi L essenza di un programma consiste nell algoritmo utilizzato. Un algoritmo descrive il modo con cui un azione dovrà essere realizzata. Una volta che abbiamo definito bene l algoritmo, esprimerlo in Java (o in un altro linguaggio di programmazione) non è un compito difficile.

Algoritmi Un algoritmo è un insieme di istruzioni per risolvere un problema. Un algoritmo deve essere espresso in maniera completa e precise. Un algoritmo può essere espresso in un linguaggio naturale (italiano, inglese, ) o in pseudocodice.

Algoritmi Utilizziamo algoritmi nella vita quotidiana tutte le volte che:, seguiamo le istruzioni per il montaggio di una apparecchiatura, per impostare il ciclo di lavaggio di una lavastoviglie, per prelevare contante da uno sportello Bancomat, ecc..

Algoritmi Un algoritmo è una sequenza di passi che, se intrapresa da un esecutore, permette di ottenere i risultati attesi (output) a partire dai dati forniti (input). Una volta in grado di specificare un algoritmo per risolvere un problema, siamo anche in grado di automatizzare il procedimento descritto dall algoritmo.

Curiosità Il termine algoritmo deriva dal nome del matematico persiano Muhammadibn Musa al-khwarizmi (Corasmia 780 circa - 850 circa). Esercitò la professione nella città di Baghdad, dove insegnava, e introdusse nel mondo arabo i numeri indiani. La sua opera Il calcolo degli indiani venne successivamente tradotta in latino da un monaco europeo, con il titolo Liber algarismi - (Il libro di al- Khwarizmi).

Dall algoritmo al programma.. L algoritmo in psedocodice viene tradotto dal programmatore in un linguaggio di programmazione seguendo la sintassi del linguaggio. Il programma viene tradotto dal compilatore (interprete) in linguaggio macchina per essere eseguito. Il compilatore ci aiuta anche a correggere gli errori del programma

Errori Un errore in un programma è chiamato bug. Il processo di eliminazione errori è chiamato debugging. Tre tipi di errori Errori di sintassi Errori di esecuzione Errori logici

Errori di sintassi (sintax errors) Sono errori grammaticali le regole di scrittura sono molto strette Il compilatore rileva gli errori di sintassi e scrive un messaggio di errore Esempio: dimenticare un ; alla fine di una istruzione

(Errori di esecuzione) Runtime Errors Errori che vengono individuati mentre si esegue il programma (non durante la compilazione) Quando il computer trova un errore, il programma termina e viene stampato sullo schermo un messaggio di errore. Esempio: attempting to divide by 0

Errori Logici (Logic Errors) Errori che non vengono segnalati nè durante la compilazione nè durante l esecuzione ma che portano il programma a produrre risultati sbagliati. DIFFICILI da individuare! Occorre testare il programma con particolari dati in input

Riutilizzare il Software Programmi non sono di solito creati da zero In genere contengono delle parti che sono state create in altri contesti Si utilizzano delle classi generali già definite Java fornisce già molte classi Controllare la documentazione Java

Riutilizzare il Software

Variabili Variabili sono utilizzate per memorizzare dati come numeri e lettere. sono una specie di contenitore sono implementate come locazioni di memoria Il dato memorizzato in una variabile è chiamato il suo valore. il valore è conservato nella locazione di memoria. Il valore di una variabile può essere cambiato.

Dichiarazione di variabili Dichiarare una variabile significa sceglierne il nome e il tipo. int numerocestini,uovapercestino; Il tipo di una variabile determina quale genere di valore potrà contenere. (int, double, char, etc.). Una variabile deve essere dichiarata prima di essere utilizzata in una istruzione.

Sintassi ed esempi sintassi <tipo> <identif_1>,<identif_2>, ; esempi int num1, valore, contapassi; double media, tassointeresse; char risposta;

Identificatori Java Un identificatore è un nome (es. il nome di una variabile). Identificatori possono contenere soltanto: Lettere Cifre (0.9) il carattere underscore (_) Il primo simbolo non può essere una cifra. Identificatori possono essere lunghi a piacere Java è case sensitive, valore, Valore, e VALORE sono identificatori diversi.

Parole chiave o riservate Alcune parole che fanno parte proprio del linguaggio Java non possono essere usate come identificatori. Esempi: int, public, class,

Convenzioni sui nomi Tipi Class iniziano con lettera maiuscola (es. String). Tipi Primitivi iniziano con lettera minuscola (es. int). Variabili sia di tipo class che primitive iniziano con lettera minuscola (es. mionome, numero). Nomi formati da più parole contengono le maiuscole all inizio delle successive parole

Tipi di dati Un tipo classe è usato per una classe di oggetti ed ha sia dati che metodi "Java is fun" è un valore del tipo classe String Un tipo primitivo è usato per valori semplici tipo come numeri o singoli caratteri. int, double, char sono tipi primitivi.

Tipi Primitivi 4 tipi integer (byte, short, int, long) int è il più utilizzato 2 tipi floating-point (float,double) double è il più utilizzato 1 tipo carattere (char) 1 tipo booleano (boolean)

Esempi Tipi Integer 0-1 365 12000 Tipi Floating-point 0.99-22.8 3.14159 5.0 Tipi carattere 'a' 'A' '#' ' ' Tipi Booleani true false

Tipi Primitivi

Dichiarare le Variabili All inizio della sezione del programma public static void main(string[] args) { /* dichiara variabili qui */... } (Immediatamente prima del loro utilizzo)

Istruzioni di assegnamento Utilizzate per dare un valore ad una variabile risposta = 42; media = 55.3 / 7; scala = b ; Il simbolo di =" si chiama operatore di assegnamento.

Sintassi dell istruzione di assegnamento <variabile> = <espressione> dove espressione può essere un altra variabile, una costante (es. un numero) o qualche espressione aritmetica o logica. (che utilizza operatori aritmetici o logici) NOTA: espressione può contenere anche la stessa variabile Esempio: somma = somma + 4;

Istruzioni di assegnamento L espressione a destra dell operatore di assegnamento (=) è calcolata per prima. Il risultato è poi utilizzato per assegnare il valore alla variabile posta a sinistra del segno = Esempio: somma = somma + 4; dopo l istruzione il valore della variabile somma risulterà incrementato di 4 unità.

Inizializzare le Variabili Una variabile che è stata dichiarata ma a cui non è stato dato un valore si dice non inizializzata. In genere tutte le variabili hanno un qualche valore di default ( null per quelle di tipo class, 0 per quelle primitive numeriche) Meglio non fidarsi dei valori di default e inizializzarle!

Inizializzare le Variabili: sintassi tipo variabile_1 = espressione_1, variabile_2 = espressione_2, ;

Vediamo un esercizio della lezione scorsa: Ese02_4.java..e facciamo una piccola revisione...

Esercizio Ese03_1 Scrivere un programma che: Chiede all utente di inserire 5 numeri double corrispondenti al prezzo in euro di 5 oggetti da comprare. Restituisce in output il costo totale da pagare per l'acquisto. (Supponendo che l'utente paghi con una banconota da 20 Euro) Scrive in output anche il resto che il cassiere deve restituire NOTA1: Per acquisire in input valori double usare n = tastiera.nextdouble(); NOTA2: utilizzare SOLTANTO 2 variabili