Struttura del programma
|
|
- Costantino Fantoni
- 6 anni fa
- Visualizzazioni
Transcript
1 Intestazione Struttura del programma Lista di istruzioni Esempio: public class Hello { public static void main (String [] args){ System.out.println( Ciao come stai?");
2 La grammatica di Java (non completa) Program::= [Imports] public class Ide MainDef Imports::= Import ; Imports Import Import::= import java.ide.(ide * ) MethodList::=MainDef MainDef::= {public static main ([String [ ] args]) {StatementList}
3 La grammatica di Java (non completa) StatementList::=Statement StatementList ε Statement::= Command Declaration Command::= System.out.print[ln](Exp) Exp::= Exp + Exp (Exp) Ide Literal... Literal::= StringLiteral IntegerLiteral FloatingLiteral CharacterLiteral BooleanLiteral NullLiteral
4 La grammatica di Java (non completa) Ide::= Char CharSeq StringLiteral::= CharSeq CharSeq::= Char CharSeq ε Char::= a b... z A... Z IntegerLiteral ::= (+ -) Integer 0 Integer ::= Digit DigitSeq Digit ::= DigitSeq ::= Digit DigitSeq ε
5 Stampa di dati in Java (Output) Si stampano sequenze di caratteri (String). Sia s una stringa System.out.print(s); stampa la stringa s System.out.println(s); stampa s e va a capo La stringa s può essere: 1. una sequenza di caratteri racchiusi tra 2. stringhe concatenate s1+s2 (+ operatore di concatenazione) 3. qualunque valore che puo` essere convertito in stringa ad es. i numeri (attenzione al + vedi es.)
6 Tipi di dati primitivi in Java numeri: interi 1,+22,-133, int, long, short razionali 0.345, 56.54, 9, float, double booleani: (true,false) boolean caratteri: a,... A char
7 public class volume { public static void main (String[] args) //calcolo della quantita` totale di bibite { final double bottvol =2.0; final double lattvol = 0.355; int bottnum = 4; int lattnum = 10; Un altro esempio double totale = bottvol * bottnum + lattvol * lattnum; System.out.println( volume totale + totale + litri ); }}
8 La sintassi di Java (le dichiarazioni) Declaration ::=[DescSeq] Type Ide [= Exp]; DescSeq ::= Desc DescSeq ε Desc ::= public private static final Command::= System.out.print[ln](Exp) Type ::= int boolean double float char Ide
9 Costanti final Type Ide=Exp; Ide è una costante cioè un nome a cui è associato un valore (analogamente alle variabili) di tipo T, a cui però può essere assegnato un valore una sola volta. Vantaggi: Aumentano la leggibilità Se cambia il valore della costante devo modificarlo solo nell inizializzazione
10 Commenti Aumentano la leggibilita` se usati con criterio. In Java ci sono due modi di inserire commenti: commenti su una sola riga //: //calcolo della quantita` totale di bibite commenti su piu` righe /* */: /* Commenti racchiusi tra parentesi */
11 Comandi Linux per Java Per eseguire abbiamo visto: java nomeclasse Per compilare : javac nomeclasse.java dove nomeclasse.java è il nome del file contenente il (sorgente del) programma Java, editato usando emacs o un altro editor di testi.
12 Per eseguire un programma: Occorre: scrivere il programma in un file (usando ad esempio emacs) dandogli come nome il nome della classe che ha come metodo statico main con aggiunto il suffisso.java compilare il programma con il comando javac eseguire il programma con il comando java
13 Lettura di dati in Java (Input) Non useremo la lettura standard perchè un po troppo complessa, esempio: c e` una variabile che: va dichiarata come segue: ConsoleReader c=new ConsoleReader (System.in) i comandi a disposizione sono readint: c.readint readline: c.readline() readdouble: c.readdouble() readchar: c.readchar()
14 La sintassi di Java (non completa) Exp::= Exp + Exp (Exp) Ide Literal new ConsoleReader (System.in); c.readline(); c.readdouble(); c.readint(); c.readchar();
15 Astrazione sui valori Introduzione di nomi con associati dei valori Esempio: public class Hello { public static void main (String [] args){ System.out.println( Come ti chiami "); ConsoleReader c=new ConsoleReader (System.in); String nome=c.readline(); System.out.println( Ciao "+nome);}}
16 Altri tipi predefiniti :double, e float per i razionali Costanti 0.0, 1.2, 5.89 ecc. Tutte le operazioni sugli interi:+.-.*,/ È possibile anche fare operazioni miste (operandi int e double) il risultato è un double 3*1.2=3.6 Assegnamento: int float double int x=7; double y; y=x; y ora vale 7.0 (esempio) x=y/2 errore x=(int)y cast
17 Composizione di istruzioni Sequenzializzazione: le istruzioni vengono eseguite in sequenza: S 1 S 2... S k Lo stato in cui viene eseguita S 2 è lo stato risultante dopo l esecuzioni di S 1 nello stato di partenza, ecc. lo stato in cui viene eseguita S i è lo stato risultante dopo l esecuzioni di S i-1. Sintassi della sequenzializzazione: StatementList::=Statement StatementList ε
18 Composizione di istruzioni Condizionale: le istruzioni eseguite dipendono dal verificarsi o meno di una condizione. Due forme: Sintassi 1. if (Cond) C 1 else C 2 2. if (Cond) C 1 Semantica informale Nello stato di partenza viene verificata la condizione (Cond) che è un espressione boolena. Se la condizione è verificata viene eseguito S 1 altrimenti nella forma 1 si esegue S 2, nella forma 2 si prosegue con l istruzione successiva. S 1 ed S 2 sono comandi
19 public class CalcolaMassimo2 { Esempio di condizionale: massimo di due numeri public static void main (String [] args) {... }} int n1=console.readint(); int n2=console.readint(); if (n1>n2) System.out.println( Massimo "+n1);" else System.out.println( Massimo "+n2);"
20 Modifica di variabile: Sintassi 1. Ide = Exp Assegnamento 2.Semantica informale Nello stato di partenza viene valutata l espressione Exp, ottenendo il valore v espressione che deve essere dello stesso tipo (o compatibile) con il tipo di Ide. Ide deve essere dichiarata nello stato di partenza. Lo stato risultante è lo stato di partenza in cui Ide ha come valore v
21 public class CalcolaMassimo3 { Esempio di condizionale: massimo di tre numeri public static void main (String [] args){ int max=console.readint(); int n1=console.readint(); int n2=console.readint(); if (n1>max) max=n1; if (n2>max) max=n2; System.out.println("Numero massimo e` "+max);}}"
22 Composizione di istruzioni Iteratori: le istruzioni del corpo dell iteratore vengono eseguite ripetutamente. La ripetizione è avviene se è verificata una condizione. Esistono tre forme di iterazione in Java: 1. while 2. do - while 3. for Gli iteratori in Java sono tutti equivalenti (si può sempre sostituire un iteratore con un altro di diversa forma. Forme diverse si adattano diversamente alle varie situazioni. Il risultato è che se si sceglie la giusta forma il programma è più leggibile.
23 while Il corpo S dell iteratore viene eseguito finchè la condizione (cond) è vera. Sintassi: while (cond) S Semantica informale: Si valuta la condizione (cond) nello stato di partenza, se è vera si esegue il corpo S, nello stato risultante dall esecuzione di S si rivaluta l intero while.
24 Esempio while: massimo di k numeri public class CalcolaMassimoKWhile { public static void main (String [] args){ final int k=10 10; System.out.print("Scrivi il primo numero > ");" int max=c.readint();int n;int i=2; while(i<=k) { System.out.print("Scrivi il "+i+" +i+" " numero> ");" n=c.readint(); if(n>max) max=n; i++; } System.out.println("Il valore massimo e` "+max);}}"
25 While con variabili booleane La definizione di variabili booleane inizializzate true utilizzate nella condizione di un while permettono di terminare quando la condizione diventa falsa (dimostrazione per assurdo). Vedi esempio LeggiFinoAlPunto.
26 Un altro iteratore il for Il for in Java è equivalente al while (vedi semantica) cambia solo la sintassi. Com::=... for ([T] Ide =Exp1; BE ; Ide=Exp2) C... contatore 1) Inizializzazione del contatore. Dichiarazione o assegnamento 4 corpo 3 aggiornamento del contatore 2) condizione
27 La sintassi di Java: comandi Command::= Ide= Exp; {StatementList} if (Exp) C1 else C2; if (Exp) C; while (Exp) C; do C while (Exp); for([type] Ide = Exp; Exp; Ide=Exp) C; System.out.print[ln](Exp);
28 Esempio Figure geometriche public class FigureGeometriche{ public static void main (String[] args) {System.out.println( Scrivi C per Cerchio ); System.out.println( Scrivi R per Rettangolo ); System.out.println( Scrivi T per Triangolo ); char c =Leggi(); if(c== C ) faicerchio; //Blocco per Cerchio else if(c== R ) fairettangolo; /*Blocco per Rettangolo*/ else if(c== T ) faitriangolo; //Blocco per Triangolo else System.out.println( Errore figura sconosciuta );}}
29 Esempio - Figure geometriche Cerchio faicerchio: {System.out.println( Dammi il raggio del cerchio ); final double pigreco=3.14; double raggio=leggi(); double area=raggio*raggio*pigreco; System.out.println( Area del cerchio di raggio +raggio+ e` + area) }
30 Esempio Figure geometriche:rettangolo fairettangolo: {System.out.println( Dammi la base del rettangolo ); double base=leggi(); System.out.println( Dammi l altezza del rettangolo ); double altezza=leggi(); System.out.println( Area del rettangolo di base +base+ e altezza +altezza+ e` + base*altezza}
31 faitriangolo: Esempio Figure geometriche:triangolo {System.out.println( Dammi la base del triangolo ); double base=leggi(); System.out.println( Dammi l altezza del triangolo ); double altezza=leggi(); System.out.println( Area del triangolo di base +base+ e altezza +altezza+ e` + base*altezza/2}
32 Programmazione strutturata Problemi complessi si risolvono suddividendo il problema in problemi più semplici ciascuno risolto da un programma es: faicerchio, fairettangolo e faitriangolo sono pezzi di programma che assolvono un compito, in questo caso quello di leggere e calcolare per una data fig. geometrica. I programmi definiti dentro un programma più generale si chiamano procedure o funzioni nei linguaggi o-o (Java): metodi.
33 Sottoprogrammi Trasferimento del controllo (cambia il flusso delle istruzioni) Concetti di programma chiamante e programma invocato Scambio di dati tra programma invocato e programma chiamante parametri formali e parametri attuali risultato del programma invocato ambiente del programma invocato
34 Definizione e invocazione di sottoprogrammi public static Type Ide (Type Ide1, Type Ide2) {StmtList } tipo del risultato corpo del metodo... Ide(Val1,Val2)... parametri attuali parametri formali corrispondenza formali attuali nome metodo
35 Le classi in Java Le classi rappresentano insiemi di entità con le stesse caratteristiche. Nei linguaggi object-oriented il modello privilegia la rappresentazione delle entità. Ogni programma Java prevede la definizione di almeno una classe. In questa fase la classe è vista come un contenitore di metodi ( sottoprogrammi )
36 Astrazione procedurale in Java: Metodi statici (static) Permettono di definire funzioni di uso comune non legate a specifiche entità che sono rappresentate nel programma Sono sempre definiti in una classe Anche il main (programma principale) è un metodo statico della classe che viene passata come argomento al comando Linux: java nomeclasse che provoca l esecuzione del programma
37 Strutturazione del programma definendo più classi Invece di aggiungere i metodi alla classe in cui è definito il main è possibile definire i metodi in una classe diversa. In questo modi possono raggruppare metodi che svolgono funzioni analoghe (es. Geometria e Num) L invocazione diventa: IdeClass.Ide(Val 1,..Val k )
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
DettagliIL LINGUAGGIO JAVA Input, Tipi Elementari e Istruzione Condizionale
Fondamenti di Informatica IL LINGUAGGIO JAVA Input, Tipi Elementari e Istruzione Condizionale Fondamenti di Informatica - D. Talia - UNICAL 1 Lettura di dati da input In Java la lettura di dati da input
DettagliINTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica
Fondamenti di Informatica INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA Fondamenti di Informatica - D. Talia - UNICAL 1 Fondamenti di Informatica - Programma Un programma è una formulazione
Dettagli6 - 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
Dettagli7 - Programmazione procedurale: Dichiarazione e chiamata di metodi ausiliari
7 - Programmazione procedurale: Dichiarazione e chiamata di metodi ausiliari Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa
DettagliLezione 6 Introduzione al C++ Mauro Piccolo
Lezione 6 Introduzione al C++ Mauro Piccolo piccolo@di.unito.it Linguaggi di programmazione Un linguaggio formale disegnato per descrivere la computazione Linguaggi ad alto livello C, C++, Pascal, Java,
DettagliLaboratorio 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[]
DettagliProgrammazione in Java (I modulo)
Programmazione in Java (I modulo) Lezione 4 Variabili di tipo primitivo. Dichiarazione di costanti Conversioni di tipo: operatore cast Altri operatori di assegnamento Operazioni aritmetiche e di confronto
DettagliConcetto di Funzione e Procedura METODI in Java
Fondamenti di Informatica Concetto di Funzione e Procedura METODI in Java Fondamenti di Informatica - D. Talia - UNICAL 1 Metodi e Sottoprogrammi Mentre in Java tramite le classi e gli oggetti è possibile
DettagliMetodi statici. Dichiarazione e chiamata di metodi statici
Metodi statici Dichiarazione e chiamata di metodi statici Cos è un metodo Un metodo è un blocco di istruzioni che fornisce una funzionalità e viene identificato con un nome Può avere dei parametri ed un
DettagliCostrutti iterativi. Utilizzo dei costrutti iterativi
Costrutti iterativi Utilizzo dei costrutti iterativi Costrutti iterativi (1/3) I costrutti iterativi permettono di eseguire ripetutamente del codice Il linguaggio Java mette a disposizione tre costrutti
DettagliModulo 2: Strutture fondamentali della programmazione Java
Modulo 2: Strutture fondamentali della programmazione Java Argomenti Trattati: Un semplice programma Java: Presentazione di un primo Esempio; Introduzione alla struttura; Compilazione ed esecuzione. Argomenti
DettagliDefinizione di metodi in Java
Definizione di metodi in Java Un metodo in Java definisce un operazione ad alto livello (sottoprogramma) che consente di manipolare dati e oggetti. Durante la computazione effettuata da un programma, un
DettagliLe Strutture di controllo Del Linguaggio C. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni
Le Strutture di controllo Del Linguaggio C Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni STRUTTURE DI CONTROLLO PRIMITIVE SEQUENZA SELEZIONE (o scelta logica) ITERAZIONE NON PRIMITIVE
DettagliEsercizi di preparazione Prima Parte
Esercizi di preparazione Prima Parte DEFINIZIONE VARIABILI Quali delle seguenti dichiarazioni di variabili sono errate e perché a. int am,1h; b. boolean false; c. long x=7; d. shorte y,e-; i. : String
DettagliIntroduzione a Java. Giovanni Pardini Dipartimento di Informatica Università di Pisa.
a Java 1 Giovanni Pardini pardinig@di.unipi.it www.di.unipi.it/~pardinig Dipartimento di Informatica Università di Pisa 30 novembre 2009 1 2 3 1 Sintassi di base Hello World! Blocchi e variabili 2 Sintassi
DettagliIntroduzione Programmazione Java
Introduzione Programmazione Java Paolo Tomeo paolo.tomeo@poliba.it Regole basilari Java è case sensitive quindi prestare attenzione alle maiuscole Il commento si inserisce con // all'inizio della linea
DettagliAlgebra 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
DettagliIntroduzione a Java. Riferimenti
Introduzione a Java Si ringraziano Massimiliano Curcio e Matteo Giacalone 1: Introduction 1 Riferimenti! Java tutorial: http://java.sun.com/docs/books/tutorial/! Il Java tutorial è parte di una più ampia
DettagliFondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011
Fondamenti di Informatica 1 Prof. B.Buttarazzi A.A. 2010/2011 Sommario La classe String Lettura da input di dati numerici (tipo int) Stampa di dati numerici Uno sguardo al codice Esercizi 21/03/2011 2
Dettagli<istruzione> ::= <istruzione-semplice> <istruzione> ::= <istruzione-di-controllo> <istruzione-semplice> ::= <espressione> ;
ISTRUZIONI Le istruzioni esprimono azioni che, una volta eseguite, comportano una modifica permanente dello stato interno del programma o del mondo circostante. Le strutture di controllo permettono di
DettagliAlgoritmi, Strutture Dati e Programmi. UD 2.b: Programmazione in Pascal
Algoritmi, Strutture Dati e Programmi : Programmazione in Pascal Prof. Alberto Postiglione AA 2007-2008 Università degli Studi di Salerno Il Linguaggio di Programmazione Pascal Esistono molti linguaggi
DettagliLinguaggio C Informatica Grafica
Linguaggio C Informatica Grafica Corsi di Informatica Grafica Prof. Manuel Roveri Dipartimento di Elettronica e Informazione roveri@elet.polimi.it Linguaggio C Breve storia Struttura di un programma Variabili
DettagliFondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011
Fondamenti di Informatica 1 Prof. B.Buttarazzi A.A. 2010/2011 Sommario Istruzioni di controllo Iterative Condizionali Algoritmi e Diagrammi di flusso Esercizi 28/03/2011 2 Istruzioni iterative while do
Dettagli3) Descrivere l architettura di un elaboratore tramite astrazione a livelli
Di seguito sono elencati una serie di domande tipo esonero ; i quiz vogliono dare un sistema di autovalutazione e di confronto allo studente che deve prepararsi alla prova di metà corso. Il numero e l
DettagliJavaScript Core Language. Prof. Francesco Accarino IIS Atiero Spinelli Sesto San Giovanni via leopardi 132
JavaScript Core Language Prof. Francesco Accarino IIS Atiero Spinelli Sesto San Giovanni via leopardi 132 Condizioni L utilizzo di operatori relazionali e logici consente di formulare delle condizioni
DettagliLe basi del linguaggio Java
Corso di Laurea Ingegneria Civile Fondamenti di Informatica Dispensa 10 Le basi del linguaggio Java Aprile 2010 Le basi del linguaggio Java 1 Prerequisiti Nozioni generali sulla sintassi e semantica del
DettagliFunzioni, Stack e Visibilità delle Variabili in C
Funzioni, Stack e Visibilità delle Variabili in C Programmazione I e Laboratorio Corso di Laurea in Informatica A.A. 2016/2017 Calendario delle lezioni Lez. 1 Lez. 2 Lez. 3 Lez. 4 Lez. 5 Lez. 6 Lez. 7
DettagliTipi di dato. Il concetto di tipo di dato viene introdotto per raggiungere due obiettivi:
Tipi di dato Il concetto di tipo di dato viene introdotto per raggiungere due obiettivi: esprimere in modo sintetico la loro rappresentazione in memoria, e un insieme di operazioni ammissibili permettere
DettagliProgrammazione, 5 a lezione
Programmazione, 5 a lezione Eugenio Omodeo Dipartimento di Matematica e Informatica, Università degli Studi di Trieste. Trieste, 12.10.2010 Esecuzione sequenziale I All avvio di un programma, il processo
DettagliUniversità 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
DettagliIstruzioni Condizionali
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1 Dispensa 6 Istruzioni Condizionali Carla Limongelli Settembre 2006 http://www.dia.uniroma3.it/~java/fondinf1/ Istruzioni condizionali
DettagliIndice. 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
Dettagli5 - Istruzioni condizionali
5 - Istruzioni condizionali Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it
DettagliProgrammazione con il linguaggio LibreOffice Basic
Programmazione con il linguaggio LibreOffice Basic L ambiente di programmazione Il software LibreOffice possiede un ambiente di programmazione in linguaggio Basic, che consente di creare procedure software
DettagliEsonero di Informatica I. Ingegneria Medica
Di seguito sono elencati una serie di domande tipo esonero ; i quiz vogliono dare un sistema di autovalutazione e di confronto allo studente che deve prepararsi alla prova di metà corso. Il numero e l
DettagliElementi lessicali. Lezione 4. La parole chiave. Elementi lessicali. Elementi lessicali e espressioni logiche. Linguaggi di Programmazione I
Lezione 4 Elementi lessicali e espressioni logiche Matricole 2-3 Elementi lessicali il linguaggio C ha un suo vocabolario di base i cui elementi sono detti token esistono 6 tipi di token: parole chiave
DettagliCorso sul linguaggio Java
Corso sul linguaggio Java Modulo JAVA2 2.1- Funzioni 1 Prerequisiti Programmazione elementare in Java Tecnica top-down Concetto matematico di funzione Compilazione e link di programmi Esecuzione di funzioni
DettagliCOMANDI ITERATIVI. Ivan Lanese
COMANDI ITERATIVI Ivan Lanese Argomenti Comando while Comando do while Comando for Comando while: reminder while (condizione) comando; Semantica: la condizione viene testata: se è vera, viene eseguito
DettagliUso di metodi statici. Walter Didimo
Uso di metodi statici Walter Didimo Metodi di istanza Fino ad ora abbiamo imparato a creare oggetti e ad invocare metodi su tali oggetti i metodi venivano eseguiti dagli oggetti un metodo invocato su un
DettagliProgramma del corso. Elementi di Programmazione. Introduzione agli algoritmi. Rappresentazione delle Informazioni. Architettura del calcolatore
Programma del corso Introduzione agli algoritmi Rappresentazione delle Informazioni Architettura del calcolatore Reti di Calcolatori Elementi di Programmazione Algoritmi e programmi Algoritmo Sequenza
DettagliProgrammazione Java Struttura di una classe, Costruttore, Riferimento this
Programmazione Java Struttura di una classe, Costruttore, Riferimento this romina.eramo@univaq.it http://www.di.univaq.it/romina.eramo/tlp Roadmap > Struttura di una classe > Costruttore > Riferimento
DettagliBasi della programmazione in Java. Anteprima. Uso delle variabili. Il concetto di variabile Uso delle variabili. Input da tastiera I tipi Esercizi
Basi della programmazione in Java Nicola Drago nicola.drago@univr.it Dipartimento di Informatica Università di Verona Anteprima Il concetto di variabile Uso delle variabili Dichiarazione Assegnamento Visualizzazione
DettagliFondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011
Fondamenti di Informatica 1 Prof. B.Buttarazzi A.A. 2010/2011 Sommario Istruzione condizionale switch Istruzioni di salto break e continue Uso di variabili di tipo boolean Variabili di tipo array (monodimensionali)
DettagliUnità Didattica 2 Linguaggio C. Espressioni, Operatori e Strutture linguistiche per il controllo del flusso
Unità Didattica 2 Linguaggio C Espressioni, Operatori e Strutture linguistiche per il controllo del flusso 1 Espressioni e assegnazioni Le espressioni sono definite dalla grammatica: espressione = variabile
DettagliDiagrammi di flusso. Un metodo per rappresentare graficamente gli algoritmi. sotto programma. Input/ Output. Start. predicato Elaborazione Stop
Diagrammi di flusso Un metodo per rappresentare graficamente gli algoritmi. Input/ Output sotto programma Start predicato Elaborazione Stop La programmazione strutturata Un algoritmo è strutturato in blocchi
DettagliIstruzioni di ripetizione in Java 1
in Java Corso di laurea in Informatica Le istruzioni di ripetizione consentono di eseguire molte volte la stessa Si chiamano anche cicli Come le istruzioni condizionali, i cicli sono controllati da espressioni
DettagliPROGRAMMAZIONE STRUTTURATA
PROGRAMMAZIONE STRUTTURATA Programmazione strutturata 2 La programmazione strutturata nasce come proposta per regolamentare e standardizzare le metodologie di programmazione (Dijkstra, 1965) Obiettivo:
DettagliLe strutture di controllo
INFORMATICA B Ingegneria Elettrica Le strutture di controllo Selezione un esempio introduttivo Si disegni il diagramma di flusso di un algoritmo che chiede all utente un valore intero e visualizza il suo
DettagliBreve Manuale di Riferimento sulla Sintassi Linguaggi C++ e FORTRAN
Breve Manuale di Riferimento sulla Sintassi Linguaggi e versione aggiornata al 05/02/2004 Sommario Elementi di Base... 2 Dati, Tipi e Dichiarazioni... 2 Tipi di Dato di Base... 2 Tipi di Dato Strutturati...
DettagliRiassunto. I mattoni di base di un programma Java. Oggi. Un programma complicato. Oggi. Perché è complicato? Stefano Mizzaro 1.
I mattoni di base di un programma Java Stefano Mizzaro Dipartimento di matematica e informatica Università di Udine http://www.dimi.uniud.it/mizzaro mizzaro@dimi.uniud.it Programmazione, lezione 2 28 settembre
DettagliSTRUTTURE DI CONTROLLO DEL C++
STRUTTURE DI CONTROLLO DEL C++ Le istruzioni if e else Le istruzioni condizionali ci consentono di far eseguire in modo selettivo una singola riga di codice o una serie di righe di codice (che viene detto
DettagliINTRODUZIONE ALLA PROGRAMMAZIONE
INTRODUZIONE ALLA PROGRAMMAZIONE Prof. Enrico Terrone A. S: 2008/09 Definizioni Programmare significa risolvere problemi col computer, cioè far risolvere problemi al computer attraverso un insieme di informazioni
DettagliOperatori in Java. Il Costrutto Condizionale if
Operatori in Java Operatore Tipo Semantica > binario maggiore >= binario maggiore o uguale < binario minore
DettagliIndice. Introduzione a tool per lo sviluppo e l'esecuzione di programmi in linguaggio Java. Compilazione ed esecuzione di un programma
Indice Introduzione a tool per lo sviluppo e l'esecuzione di programmi in linguaggio Java Introduzione all ambiente di sviluppo - Compilazione ed esecuzione di un programma - Compilazione ed esecuzione
DettagliProgrammazione ad Oggetti. Java Parte II
Programmazione ad Oggetti Java Parte II Overview Caratteristiche lessicali Il primo programma Java 1 Commenti /* Commento tradizionale, eventualmente su più linee, non nidificato */ // Commento su di una
DettagliFondamenti di informatica T-1 (A K) Esercitazione 2: Linguaggio Java, basi e controllo del flusso
Fondamenti di informatica T-1 (A K) Esercitazione 2: Linguaggio Java, basi e controllo del flusso AA 2015/2016 Tutor: Vincenzo Lomonaco vincenzo.lomonaco@unibo.it Programma Introduzione al calcolatore
Dettaglidefine define int int int double
Programma in C #include ; # define bott_vol =2.0; # define latt_vol = 0.355; int main () {int bott_num = 4; int latt_num = 10; double totale = bott_vol * bott_num + latt_vol * latt_num; printf(
DettagliProgrammazione Orientata agli Oggetti. Emilio Di Giacomo e Walter Didimo
Programmazione Orientata agli Oggetti Emilio Di Giacomo e Walter Didimo Una metafora dal mondo reale la fabbrica di giocattoli progettisti Un semplice giocattolo Impara i suoni Dall idea al progetto Toy
DettagliIstruzioni iterative. Istruzioni iterative
Istruzioni iterative Esempio: Leggere 5 interi, calcolarne la somma e stamparli. Variante non accettabile: 5 variabili, 5 istruzioni di lettura, 5... int i1, i2, i3, i4, i5; scanf("%d", &i1):... scanf("%d",
DettagliStrutture di Controllo
Introduzione Strutture di Controllo per strutture condizionali e cicliche Quando si affronta la programmazione si devono indicare al computer delle istruzioni da eseguire. Se il computer potesse comprendere
DettagliCompitino di Laboratorio di Informatica CdL in Matematica 13/11/2007 Teoria Compito A
Matematica 13/11/2007 Teoria Compito A Domanda 1 Descrivere, eventualmente utilizzando uno schema, gli elementi funzionali di una CPU. Domanda 2 Java è un linguaggio compilato o interpretato? Motivare
DettagliElementi di informatica
Elementi di informatica Programmare in C 1 Calcolare l area di un rettangolo /* Calcolo area rettangolo */ int base; int altezza; int area; Conosciamo base = 3; altezza = 7; area = base*altezza; printf("%d",
DettagliDall analisi alla codifica (1)
Corso di Laurea Ingegneria Civile Fondamenti di Informatica Dispensa 09 Dall analisi alla codifica (1) Aprile 2010 Dall'analisi alla codifica (1) 1 Contenuti... Problemi e algoritmi comprensione del problema
DettagliPROGRAMMAZIONE: Le strutture di controllo
PROGRAMMAZIONE: Le strutture di controllo Prof. Enrico Terrone A. S: 2008/09 Le tre modalità La modalità basilare di esecuzione di un programma è la sequenza: le istruzioni vengono eseguite una dopo l
DettagliIntroduzione agli Algoritmi
Introduzione agli Algoritmi Informatica Sara Zuppiroli A.A. 2012-2013 Informatica () Introduzione agli Algoritmi A.A. 2012-2013 1 / 25 Risoluzione dei problemi Dalla descrizione del problema all individuazione
DettagliSTRINGHE IN JAVA In Java, le stringhe non sono pezzi di memo-ria con dentro dei caratteri, come in C: sono oggetti appartenenti alla classe
STRINGHE IN JAVA In Java, le stringhe non sono pezzi di memo-ria con dentro dei caratteri, come in C: sono oggetti appartenenti alla classe String Una stringa Java rappresenta uno specifico valore e come
DettagliProgrammazione Procedurale in Linguaggio C++
Programmazione Procedurale in Linguaggio C++ Elementi di Base Parte 3 Istruzioni di Assegnazione G. Mecca M. Samela Università della Basilicata Elementi di Base >> Sommario Sommario Introduzione Istruzioni
DettagliISTRUZIONI ISTRUZIONI
ISTRUZIONI Le istruzioni esprimono azioni che, una volta eseguite, comportano una modifica permanente dello stato interno del programma o del mondo circostante. Le strutture di controllo permettono di
DettagliCosa si intende con stato
Il concetto di stato Cosa si intende con stato I una particolare configurazione delle informazioni di una macchina, che in qualche modo memorizza le condizioni in cui si trova, e che cambia nel tempo passando
DettagliDall algoritmo al programma
Dall algoritmo al programma Il concetto di algoritmo Un algoritmo è una sequenza di passi necessari per risolvere un problema o eseguire una computazione In alcuni casi, lo stesso problema/computazione
DettagliIl potere espressivo di un linguaggio è caratterizzato da: PROGRAMMA = DATI + CONTROLLO
LINGUAGGI DI PROGRAMMAZIONE Il potere espressivo di un linguaggio è caratterizzato da: quali tipi di dati consente di rappresentare (direttamente o tramite definizione dell utente) quali istruzioni di
DettagliProgrammazione a Oggetti e JAVA. Prof. B.Buttarazzi A.A. 2012/2013
Programmazione a Oggetti e JAVA Prof. B.Buttarazzi A.A. 2012/2013 Sommario Metodi statici Parametri attuali e formali Passaggio dei parametri Effetti collaterali Metodi statici per Array Esercizi 16/01/2013
DettagliLinguaggio C - le strutture di controllo: sequenza, selezione, iterazione
Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2008/2009 Linguaggio C - le strutture di controllo: sequenza, selezione, iterazione
DettagliEsercizi di riepilogo (Fondamenti di Informatica 1 Walter Didimo)
Esercizi di riepilogo (Fondamenti di Informatica 1 Walter Didimo) Selezione di prove di esame al calcolatore Esercizio 1 (esame del 13/01/2006) La classe Matrice definisce oggetti che rappresentano matrici
DettagliProgrammazione Procedurale in Linguaggio C++
Programmazione Procedurale in Linguaggio C++ Sottoprogrammi Parte 2 (a) Sintassi e Semantica versione 2.0 Questolavoroè concessoin uso secondoi termini di unalicenzacreative Commons (vedi ultima pagina)
DettagliLa principale modalità di calcolo è l applicazione di funzioni
1 La principale modalità di calcolo è l applicazione di funzioni Nei linguaggi funzionali puri non esistono strutture di controllo predefinite per la realizzazione di cicli quali for, while, repeat Un
DettagliIntroduzione alla programmazione
Introduzione alla programmazione Cosa è un calcolatore? Hardware Processore Memoria Periferiche Funzionamento Esegue istruzioni elementari Esegue istruzioni molto velocemente Deve essere programmato Il
DettagliLaboratorio di Matematica e Informatica 1
Laboratorio di Matematica e Informatica 1 Matteo Mondini Antonio E. Porreca matteo.mondini@gmail.com porreca@disco.unimib.it Dipartimento di Informatica, Sistemistica e Comunicazione Università degli Studi
DettagliIstruzioni iterative (o cicliche)
Dipartimento di Informatica e Sistemistica Antonio Ruberti Sapienza Università di Roma Istruzioni iterative (o cicliche) Corso di Fondamenti di Informatica Laurea in Ingegneria Informatica (Canale di Ingegneria
DettagliRappresentazione degli algoritmi
Rappresentazione degli algoritmi Universitá di Ferrara Ultima Modifica: 21 ottobre 2014 1 1 Diagramma di flusso Utilizzare il diagramma di flusso per rappresentare gli algoritmi che risolvono i seguenti
DettagliLinguaggio C - sezione dichiarativa: costanti e variabili
Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2008/2009 Linguaggio C - sezione dichiarativa: costanti e variabili La presente
DettagliLINGUAGGI DI PROGRAMMAZIONE!
LINGUAGGI DI PROGRAMMAZIONE! Il potere espressivo di un linguaggio è! caratterizzato da:! quali tipi di dati consente di rappresentare (direttamente o tramite definizione dell utente)! quali istruzioni
DettagliProgrammazione con Java
Programmazione con Java Classi e istanze in Java Definizione di classe in Java A meno che non si usino classi già scritte da altri, prima di poter creare un qualsiasi oggetto devo creare la sua rappresentazione:
DettagliIntroduzione alla programmazione
Introduzione alla programmazione Risolvere un problema Per risolvere un problema si procede innanzitutto all individuazione Delle informazioni, dei dati noti Dei risultati desiderati Il secondo passo consiste
Dettagliprint((math.floor(1345/10)%10); print (Math.floor(1345/100)%10); Le funzioni in JavaScript
Funzioni Funzioni predefinite della libreria matematica Funzioni disponibili: Math.sqrt(x) radice quadrata Math.log(x) logaritmo naturale in base e di x Math.abs(x) valore assoluto di x Math.ceil(x) arrotonda
DettagliEsercizi Programmazione I
Esercizi Programmazione I 9 Novembre 201 Esercizio 1 Valutare e dare il tipo delle seguenti espressioni condizionali. 1 char a= a, b= b ; // a ha v a l o r e decimale 97 2 i n t i= 1, j= 2 ; 3 double x=
DettagliProgrammazione a oggetti
Programmazione a oggetti Quanti oggetti, tra di loro parlando, fanno programmi. Pilu Crescenzi piluc@dsi.unifi.it Università di Firenze Programmazione a oggetti p.1/32 Cosa è un oggetto Una scatola software
DettagliPrima lezione di laboratorio. I mattoni di base di un programma Java. Comandi Unix. Riassunto. Oggi. Un programma complicato.
I mattoni di base di un programma Java Stefano Mizzaro Dipartimento di matematica e informatica Università di Udine http://www.dimi.uniud.it/mizzaro/ mizzaro@dimi.uniud.it Programmazione, lezione 2 1 ottobre
DettagliOO puro. Primi concetti di Java. Tipi primitivi. Ogni cosa è un oggetto. Java è object-oriented puro Non come il C+ + (OO ibrido) Lorenzo Bettini
Primi concetti di Java Lorenzo Bettini OO puro Java è object-oriented puro Non come il C+ + (OO ibrido) Per compatibilità col C Ogni cosa è un oggetto Gli oggetti si manipolano tramite riferimenti String
DettagliIntroduzione alla programmazione in C++
Introduzione alla programmazione in C++ Fondamenti di Informatica Roberto BASILI Marzo, 2007 La Programmazione Programmare significa: Determinare la natura del problema (analisi) Definire una decomposizione
DettagliProgrammazione web lato client con JavaScript. Marco Camurri 1
Programmazione web lato client con JavaScript Marco Camurri 1 JavaScript E' un LINGUAGGIO DI PROGRAMMAZIONE che consente di inserire codice in una pagina web Sintassi simile a Java (e al C), ma NON E'
DettagliTipi di dato semplici
Tipi di dato semplici Perché dichiarare una variabile? 2 Una variabile rappresenta uno spazio di memoria centrale Prima dell esecuzione del programma deve essere chiaro quanto spazio serve al programma
Dettaglipublic static boolean occorre (int[] a, int n) { int i = 0; boolean trovato = false;
Metodi iterativi con array monodimensionali 1. Scrivere un metodo che, dato un array di interi a, restituisce il valore minimo in a. public static int minimo (int[] a) { int min = a[0]; for (int i=1; i
DettagliEsercitazione 3. Espressioni booleane I comandi if-else e while
Esercitazione 3 Espressioni booleane I comandi if-else e while Esercizio Si consideri la seguente istruzione: if (C1) if (C2) S1; else S2; A quali delle seguenti interpretazioni corrisponde? if (C1) if
DettagliFondamenti di Programmazione. Strutture di controllo
Fondamenti di Programmazione Strutture di controllo 1! Controllo del flusso! n Flusso di esecuzione: ordine in cui le istruzioni di un programma sono eseguite! n Salvo contrordini, è in sequenza! n Due
DettagliUniversità di Roma Tor Vergata L6-1. iterazione: struttura di controllo per ripetere più volte uno stesso comando
Università di Roma Tor Vergata L6-1 iterazione: struttura di controllo per ripetere più volte uno stesso comando comandi iterativi C++: while, do-while, for while: sintassi while (espressione) comando;
DettagliELEMENTI DI INFORMATICA L-B. Ing. Claudia Chiusoli
ELEMENTI DI INFORMATICA L-B Ing. Claudia Chiusoli Materiale Lucidi delle lezioni Date degli appelli Testi di esami precedenti Informazioni e contatti http://www.lia.deis.unibo.it/courses/ Programma del
DettagliProgrammazione. Cognome... Nome... Matricola... Prova scritta del 11 luglio 2014
Cognome................................ Nome................................... Matricola............................... Programmazione Prova scritta del 11 luglio 2014 TEMPO DISPONIBILE: 2 ore Negli esercizi
DettagliDecomposizione per scelta
Decomposizione per scelta T C F P1 P2 Codifica if ( C ) T C F P1 P1 P2 else P2 C : condizione da verificare (espressione booleana a valore VERO/FALSO). Parentesi obbligatorie P1 : istruzione da eseguire
Dettagli