Corso di laurea triennale in Informatica Turno A

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Corso di laurea triennale in Informatica Turno A"

Transcript

1 Corso di laurea triennale in Informatica Turno A Docente: Anna Morpurgo Tutor: Stefano Sambruna Dipartimento di Informatica Università degli Studi di Milano A.A

2 Info corso aula: 309, Settore didattico (tranne il 6 novembre, che sarà in delta a Informatica) sito web: inizio: 9/10/2018 fine: 15/01/2019 ricevimento: per appuntamento (da chiedere a lezione o via mail) appelli d esame: gennaio, febbraio, giugno, luglio, settembre

3 svolto a lezione 10/10/18: 3. Il primo programma in Go. Il go tool. Compilazione. Esecuzione. Formattazione. Documentazione 10/10/18: 4. Discussione degli aspetti lessicali e sintattici. Commenti. Struttura generale di un programma go: programma, pacchetti, sorgenti. La libreria standard. 10/10/18: 5. Variabili: nome, tipo, valore, scope. Tipi. Classificazione dei tipi (tipi di base, tipi composti, interfacce). Dichiarazione, assegnamenti e assegnamenti multipli, short-assignment. 12/10/18: 6. I/O di base: fmt.println, fmt.print, fmt.scan. Tipi di base numerici (int, float64). Espressioni numeriche. Conversioni. Variabili inutilizzate e blank variable.

4 go build Hello.go //COMPILAZIONE./Hello //ESECUZIONE go run Hello.go //ESEGUE IL PROGRAMMA SENZA PRIMA DOVER COMPILARE go fmt <nome> // per formattare il programma modificando il file gofmt <nome> // visualizza come verrebbe formattato

5 packages Ogni programma Go è composto di packages e può usare funzioni da altri package. Un package può essere organizzato su più file (ma ogni file appartiene a uno solo package) Il nome di un package è scritto in lettere minuscole Il package a cui appartiene un file di codice deve essere indicato sulla prima riga, es.: package main. Ogni applicazione Go contiene un package chiamato main. I programmi cominciano l esecuzione nel package main.

6 import Un programma deve importare i packages di cui ha bisogno (es. fmt) tramite percorsi di import import "fmt" import "math/rand" //per importazioni multiple meglio import ( "fmt" "math/rand" )

7 Nomi pubblici In Go, un nome è pubblico (esportato) se comincia con una lettera maiuscola. Quando si importa un package, si possono utilizzare solo i suoi nomi pubblici (siano essi variabili o funzioni). Ad esempio: fmt.print Nomi non pubblici non sono accessibili dall esterno del loro package.

8 Variabili L istruzione var dichiara una lista di variabili; il tipo è alla fine. var i int Un istruzione var può essere a livello di package o di funzione. Una dichiarazione var permette anche di inizializzare le variabili: var i, j int = 1, 2 Se una variabile è inizializzata, il tipo può essere omesso; la variabile assumerà il tipo corretto, inferito dal valore nella parte destra var n, correct, name = 3, false, "Paolo"

9 Variabili: forma breve di assegnamento All interno di una funzione, l istruzione breve di assegnamento := può essere usata al posto dell istruzione var con tipo implicito. var i int j := i // j is an int k := 3 n, correct, name := 3, false, "Paolo" Al di fuori di una funzione, ogni istruzione comincia con una parola chiave (var, func, e cosí via) e quindi il costrutto := non è disponibile.

10 I valori zero Variabili dichiarate senza un valore iniziale esplicito vengono inizializzate con il loro valore zero. Il valore zero è: 0 per tipi numerici, false per il tipo booleano, "" (stringa vuota) per le stringhe

11 Conversione di tipi In Go l assegnamento tra elementi di tipo differente richiede una conversione esplicita L espressione T(v) converte il valore v nel tipo T i := 42 f := float64(i)

12 Costanti Le costanti sono dichiarate come variabili, ma con la parola chiave const. Esempio: const Pi = 3.14 Le costanti possono essere carattere, stringa, booleano, o valori numerici. Le costanti non possono essere dichiarate con la sintassi :=

13 I/O Per scrivere su standard output: funzioni fmt.print e fmt.println (fmt.println aggiunge un a-capo alla fine). Ad esempio fmt.print( Hello:, 23) produce in output: Hello: 23 Nota. Per stampare più valori, separarli con virgole. Per leggere da standard input: la funzione fmt.scan. Ad esempio: fmt.println( Please enter your full name: ) fmt.scanln(&firstname, &lastname)

14 Hello world //hello_world.go package main import "fmt" func main(){ fmt.println("hello World!") }

15 o 1 - Operazioni aritmetiche Problema: Scrivere un programma Go operazioni.go che, dati due numeri float64, esegua addizione, sottrazione, moltiplicazione e divisione dei due numeri. Esempio di esecuzione: inserisci due numeri (float) somma = 6.6 differenza = 2.4 prodotto = quoziente =

16 o 2 - Quoziente e resto Problema: Scrivere un programma Go quoziente_resto.go che, dati un dividendo e un divisore (interi), calcoli il quoziente e il resto. Annotazioni L operatore per la divisione (/) tra interi calcola la parte intera del risultato. L operatore per il resto della divisione è %. Esempio di esecuzione: inserisci il dividendo 2500 inserisci il divisore 235 quoziente = 10 resto = 150

17 o 3 - Somma di tre numeri Problema: Scrivere un programma Go somma.go che, dati tre numeri interi, calcoli la loro somma. Esempio di esecuzione: inserisci tre numeri interi = 14

18 o 4 - Altezza di un rettangolo Problema: Scrivere un programma Go altezza_rettangolo.go che, date l area e la base di un rettangolo, determini l altezza. Annotazioni Verificare come si comporta il programma quando l area inserita non è un multiplo esatto della base (nei due casi: variabili dichiarate come int e come float64) e quando viene immesso 0 come valore per la base.

19 o 5- Conversione da gradi centigradi a Fahrenheit Problema: Scrivere un programma Go centigradi_fahrenheit.go che converta in Fahrenheit una temperatura espressa in gradi centigradi (float64). Annotazioni. Un grado Fahrenheit è 5/9 di un grado centigrado e 0 gradi centigradi corrisponde a 32 gradi Fahrenheit. Esempio di esecuzione: inserisci la temperatura in centigradi C = 113 F

20 o 6 - Angoli di un triangolo Problema: Scrivere un programma Go area_triangolo.go che, date le ampiezze di due angoli di un triangolo, determini l ampiezza del terzo angolo. Esempio di esecuzione: inserisci le ampiezze di due angoli di un triangolo ampiezza terzo angolo:

21 o 7 - Perimetro e area di un rettangolo Problema: Scrivere un programma Go rettangolo.go che, date le misure dell altrezza e della base di un rettangolo (int), calcoli il perimetro e l area. Esempio di esecuzione: inserisci base e altezza (in cm) separate da uno spazio 5 9 il perimetro del rettangolo è 28 cm l area del rettangolo è 45 cmˆ 2

22 o 8 - Conversione da km/h a mi/h Problema: Scrivere un programma Go kmora_migliaora.go che converte kilometri all ora (km/h) in miglia all ora (mi/h). Un miglio equivale a km. Indicazione. Usare una costante MI_TO_KM = Esempio di esecuzione: inserisci la misura della velocità in km/h km/h = mi/h

23 o 9 - Minuti totali Problema: Scrivere un programma Go minuti.go che calcola il numero totale di minuti, dati in input il numero di ore e di minuti. Indicazione. Usare una costante MIN_IN_HOUR = 60. Esempio di esecuzione: inserisci ore e minuti 5 37 minuti totali = 337

24 o 10 - Circonferenza e area di un cerchio Problema: Scrivere un programma Go cerchio.go che, data la misura del raggio di un cerchio, calcoli la circonferenza e l area. Annotazioni La circonferenza di un cerchio di raggio r è data da 2πr. L area delimitata da un cerchio di raggio r è data da πr 2. La lettera greca π rappresenta una constante di valore circa uguale a Indicazione. Usare una costante Pi = Esempio di esecuzione: inserisci la misura del raggio (in cm) 4.5 Circonferenza = cm Area = cmˆ 2

25 o 11 - Conversione da giorni in anni, settimane, giorni Problema: Scrivere un programma Go conversione_giorni.go che converta un numero specificato di giorni (fornito dall utente) in anni, settimane, giorni. Si ignorino gli anni bisestili. Indicazione. Usare costanti per il numero di giorni in un anno e il numero di giorni in una settimana. Esempio di esecuzione: inserisci il numero di giorni da convertire giorni equivalgono a 3 anni, 33 settimane, 3 giorni

26 o 12 - Distanza tra due punti Problema: Scrivere un programma Go distanza_punti.go che calcola la distanza tra due punti nel piano cartesiano. Annotazioni Siano P 1 = (x 1, y 1 ) e P 2 = (x 2, y 2 ). La formula della distanza tra due punti P 1 e P 2 è: (x2 x 1 ) 2 + (y 2 y 1 ) 2. Siano x 1, y 1, x 2, y 2 tutti valori float64. Suggerimenti. La funzione per calcolare la radice quadrata si chiama Sqrt ed è messa a disposizione nel package "math". Esempio di esecuzione: inserisci la x e la y del primo punto 5 8 inserisci la x e la y del secondo punto 7 11 La distanza tra i due punti è:

27 o 13 - Numero di banconote Problema. Scrivere un programma Go numero_banconote.go che, dato un ammontare (valore intero) di denaro, lo suddivide nel numero più piccolo possibile di banconote. Annotazioni. Si supponga che i tagli di banconote disponibili siano: 100, 50, 20, 10, 5, 2, 1. Esempio di esecuzione inserisci l ammontare (numero intero) banconota/e da banconota/e da 50 1 banconota/e da 20 0 banconota/e da 10 1 banconota/e da 5 0 banconota/e da 2 1 banconota/e da 1

28 o 14 - Consumo medio e resa di un motore Problema. Scrivere un programma Go consumo_resa.go che calcola il consumo medio e la resa di un motore data la distanza totale percorsa (in km) e la quantità di carburante utilizzata (in litri). I valori sono di tipo float64. Annotazioni.. Il consumo medio di carburante si esprime in l/km ed è la quantità di carburante che occorre in media per percorrere un km di strada. La resa di un motore è data dalla distanza percorsa in media con un litro di carburante e si espreime in km/l. Esempio di esecuzione inserisci la distanza percorsa (in km) 50 inserisci la quantità di carburante utilizzata (in l) 10 consumo medio: 0.2 l/km resa media: 5 km/l

29 o 15 - Conversione da secondi in giorni, ore, minuti, secondi Problema. Scrivere un programma Go conversione_secondi.go che converta un numero dato di secondi (fornito dall utente) in giorni, ore, minuti, secondi. Esempio di esecuzione inserisci il numero di secondi da convertire g:h:m:s - 1:10:17:36

Corso di laurea triennale in Informatica Turno A

Corso di laurea triennale in Informatica Turno A Corso di laurea triennale in Informatica Turno A Docente: Anna Morpurgo Tutor: Stefano Sambruna Dipartimento di Informatica Università degli Studi di Milano A.A. 2018-2019 Programma svolto a lezione 22/10/18:

Dettagli

Fondamenti di Informatica T-1

Fondamenti di Informatica T-1 Fondamenti di Informatica T-1 Introduzione al linguaggio Java - Input/Output, Variabili, Tipi Tutor: Allegra De Filippo allegra.defilippo@unibo.it a.a. 2015/2016 Fondamenti di Informatica T-1 Allegra De

Dettagli

Java e i Tipi di dati primitivi. Parte 3

Java e i Tipi di dati primitivi. Parte 3 Java e i Tipi di dati primitivi Parte 3 La nozione di tipo di dato Il tipo del dato consente di esprimere la natura del dato Indica il modo con cui verrà interpretata la sequenza di bit che rappresenta

Dettagli

Corso sul linguaggio Java

Corso sul linguaggio Java Corso sul linguaggio Java Modulo JAVA.2.2 Operare con i dati Prerequisiti Concetti matematici di: Espressione Operatore 2 Introduzione Le variabili utilizzate da un programma vengono usate con operatori

Dettagli

Fondamenti di Informatica T-1

Fondamenti di Informatica T-1 Fondamenti di Informatica T-1 Input/Output, Variabili, Tipi e Stringhe Tutor: Allegra De Filippo allegra.defilippo@unibo.it a.a. 2016/2017 Fondamenti di Informatica T-1 Allegra De Filippo 1 / 19 VARIABILI

Dettagli

Introduzione alla programmazione A. Ferrari

Introduzione alla programmazione A. Ferrari Introduzione alla programmazione A. Ferrari Il linguaggio C Nel 1972 Dennis Ritchie nei Bell Laboratories progettò il linguaggio C Il linguaggio possiede tutti i costrutti di controllo dei linguaggi ad

Dettagli

HOMEWORKS. in modo che il programma stampi N ripetizioni della stringa HelloWorld (su righe diverse), con N inserito dall utente.

HOMEWORKS. in modo che il programma stampi N ripetizioni della stringa HelloWorld (su righe diverse), con N inserito dall utente. HOMEWORKS Questi esercizi saranno proposti di tanto in tanto e forniti sempre SENZA soluzioni. Come materiale complementare ai libri di testo e alle lezioni frontali e di esercitazione, si consiglia di

Dettagli

Java SE 7. Strutture di programmazione (1)

Java SE 7. Strutture di programmazione (1) Java SE 7 Strutture di programmazione (1) diegozabot@yahoo.it ursula.castaldo@gmail.com Commenti commenti multiriga: /*... */ es. /* prima riga di commento seconda riga di commento terza riga di commento

Dettagli

Fondamenti di Informatica T-1

Fondamenti di Informatica T-1 Fondamenti di Informatica T-1 Input/Output e Interi Tutor: Angelo Feraudo angelo.feraudo2@unibo.it a.a. 2018/2019 Fondamenti di Informatica T-1 Angelo Feraudo 1 / 19 TUTOR Angelo Feraudo Email: angelo.feraudo2@unibo.it

Dettagli

Unità F1. Obiettivi. Il linguaggio C. Il linguaggio C++ Linguaggio C. Pseudolinguaggio. Primi programmi

Unità F1. Obiettivi. Il linguaggio C. Il linguaggio C++ Linguaggio C. Pseudolinguaggio. Primi programmi Obiettivi Unità F1 Primi programmi Conoscere il significato di dichiarazione e definizione di variabili Conoscere i tipi di dato numerici Essere in grado di realizzare semplici algoritmi in pseudolinguaggio

Dettagli

Basi 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. 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

Dettagli

PRIMA ESPERIENZA DI LABORATORIO. Introduzione alla programmazione in C

PRIMA ESPERIENZA DI LABORATORIO. Introduzione alla programmazione in C CORSO DI LABORATORIO DI INFORMATICA CORSO DI LAUREA IN SDM ANNO ACCADEMICO 2018-2019 Docente: R. Sparvoli Esercitazioni: R. Sparvoli, F. Palma PRIMA ESPERIENZA DI LABORATORIO Introduzione alla programmazione

Dettagli

Prof. Pagani Corrado INTRODUZIONE AL LINGUAGGIO C

Prof. Pagani Corrado INTRODUZIONE AL LINGUAGGIO C Prof. Pagani Corrado INTRODUZIONE AL LINGUAGGIO C IL LINGUAGGIO C Nel 1972 Dennis Ritchie nei Bell Laboratories progettò il linguaggio C Il linguaggio possiede tutti i costrutti di controllo dei linguaggi

Dettagli

Gli Operatori. Linguaggio C. Gli Operatori. Esempi sull uso dell Operatore di Assegnamento. L Operatore di Assegnamento

Gli Operatori. Linguaggio C. Gli Operatori. Esempi sull uso dell Operatore di Assegnamento. L Operatore di Assegnamento Linguaggio C Gli Operatori Gli Operatori Gli operatori sono simboli (sia singoli caratteri che loro combinazioni) specificano come devono essere manipolati gli operandi dell espressione Operatori aritmetici

Dettagli

Fondamenti di Informatica L-A. Esercitazione 2

Fondamenti di Informatica L-A. Esercitazione 2 Fondamenti di Informatica L-A Esercitazione 2 Variabili ed Espressioni: Dichiarazione, Coercizione, Overloading, Overflow, Underflow, Divide by Zero e Casting. Input-Output: printf e scanf. Paolo Torroni

Dettagli

Fondamenti di Informatica T-1

Fondamenti di Informatica T-1 Fondamenti di Informatica T-1 Input/Output, Variabili, Tipi e Stringhe Tutor: Angelo Feraudo angelo.feraudo2@unibo.it a.a. 2017/2018 Fondamenti di Informatica T-1 Angelo Feraudo 1 / 26 TUTOR Angelo Feraudo

Dettagli

Laboratorio di Programmazione 1. Docente: dr. Damiano Macedonio Lezione 5 31/10/2013

Laboratorio di Programmazione 1. Docente: dr. Damiano Macedonio Lezione 5 31/10/2013 Laboratorio di Programmazione 1 1 Docente: dr. Damiano Macedonio Lezione 5 31/10/2013 Original work Copyright Sara Migliorini, University of Verona Modifications Copyright Damiano Macedonio, University

Dettagli

Basi della programmazione in Java

Basi della programmazione in Java Basi della programmazione in Java Nicola Drago drago@sci.univr.it Dipartimento di Informatica Università di Verona Anteprima Il concetto di variabile Uso delle variabili Dichiarazione Assegnamento Visualizzazione

Dettagli

Introduzione alla programmazione in C++

Introduzione 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

Dettagli

Dichiarazioni e tipi predefiniti nel linguaggio C

Dichiarazioni e tipi predefiniti nel linguaggio C Politecnico di Milano Dichiarazioni e tipi predefiniti nel linguaggio C Variabili, costanti, tipi semplici, conversioni di tipo. Premessa Programmi provati sul compilatore Borland C++ 1.0 Altri compilatori:

Dettagli

Gli Operatori. Università degli Studi di Brescia

Gli Operatori. Università degli Studi di Brescia Linguaggio C Gli Operatori 1 Gli operatori! Costruiscono le espressioni del C! Specificano come devono essere manipolati gli operandi dell espressione! Il C definisce una moltitudine di operatori, quali

Dettagli

Gocce di Java. Gocce di Java. Tipi di dato primitivi. Pierluigi Crescenzi. Università degli Studi di Firenze

Gocce di Java. Gocce di Java. Tipi di dato primitivi. Pierluigi Crescenzi. Università degli Studi di Firenze Gocce di Java Pierluigi Crescenzi Università degli Studi di Firenze Programmazione Concetti base Dati Variabile Tipo Istruzioni Istruzioni base Strutture di controllo Sotto-programmi Programmazione Concetti

Dettagli

Tutorato di Fondamenti di Informatica TUTOR: DAVIDE GHIANI, GIULIA ORRU

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: informatica.marcialis@gmail.com Davide Ghiani Giulia Orrù

Dettagli

Elementi di Base. Introduzione a Python.

Elementi di Base. Introduzione a Python. Elementi di Base Introduzione a Python http://www.dia.uniroma3.it/~roselli/ roselli@dia.uniroma3.it Credits Materiale a cura del Prof. Franco Milicchio Panoramica Elementi di base della sintassi (struttura,

Dettagli

Fondamenti di Informatica. Ingegneria elettronica

Fondamenti di Informatica. Ingegneria elettronica Fondamenti di Informatica Ingegneria elettronica Prima esercitazione Cecilia Catalano Sistema Operativo Il S.O. è costituito da un insieme di programmi che permettono di utilizzare e gestire tutte le risorse

Dettagli

Linguaggio C: introduzione

Linguaggio C: introduzione Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2008/2009 Linguaggio C: introduzione La presente dispensa e da utilizzarsi

Dettagli

Laboratorio di Programmazione Laurea in Bioinformatica

Laboratorio di Programmazione Laurea in Bioinformatica Laboratorio di Programmazione Laurea in Bioinformatica 15 dicembre 2008 1 Programmazione strutturata 1.1 Esercizio 1 Si scriva lo pseudocodice di un programma che calcola la media di due numeri reali.

Dettagli

Introduzione alla programmazione in linguaggio C

Introduzione alla programmazione in linguaggio C Introduzione alla programmazione in linguaggio C Il primo programma in C commento Header della libreria Funzione principale Ogni istruzione in C va terminata con un ; Corso di Informatica AA. 2007-2008

Dettagli

Introduzione al C. Lezione 1 Elementi. Rossano Venturini. Pagina web del corso

Introduzione al C. Lezione 1 Elementi. Rossano Venturini. Pagina web del corso Introduzione al C Lezione 1 Elementi Rossano Venturini rossano@di.unipi.it Pagina web del corso http://didawiki.cli.di.unipi.it/doku.php/informatica/all-b/start Lezioni di ripasso C Mercoledì 19 Giovedì

Dettagli

6SC Informatica 9/12/2015

6SC Informatica 9/12/2015 6SC-C-007-2015-12-09 (S) Studente: THE TEACHER CLASSE MATERIA DATA OGGETTO VALUTAZIONE 6SC Informatica 9/12/2015 Preparazione alla verifica di venerdì 18/12 (soluzioni) N.A. Scrivere, in linguaggio C++,

Dettagli

Funzioni, Stack e Visibilità delle Variabili in C

Funzioni, Stack e Visibilità delle Variabili in C Funzioni, Stack e Visibilità delle Variabili in C Laboratorio di Programmazione I Corso di Laurea in Informatica A.A. 2018/2019 Argomenti del Corso Ogni lezione consta di una spiegazione assistita da slide,

Dettagli

Unità B1 Programmazione base

Unità B1 Programmazione base (A) CONOSCENZA TERMINOLOGICA Dare una breve descrizione dei termini introdotti: Multipiattaforma Interpiattaforma Porting Piattaforma hardware Piattaforma software Riusabilità Parametri della linea di

Dettagli

Nuovi tipi di dato e. Alessandra Giordani Lunedì 26 marzo

Nuovi tipi di dato e. Alessandra Giordani Lunedì 26 marzo Nuovi tipi di dato e costrutto condizionale Alessandra Giordani agiordani@disi.unitn.it Lunedì 26 marzo 2012 http://disi.unitn.it/~agiordani/ Tipi di dato fondamentali int e il tipo di dato che consente

Dettagli

Lezione 6 Introduzione al C++ Mauro Piccolo

Lezione 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,

Dettagli

Tipi di dato semplici

Tipi 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

Dettagli

Esempi di programmi. Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1. Dispensa E01. A. Miola Settembre 2007

Esempi di programmi. Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1. Dispensa E01. A. Miola Settembre 2007 Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1 Dispensa E01 Esempi di programmi A. Miola Settembre 2007 http://www.dia.uniroma3.it/~java/fondinf1/ Esempi di programmi - 1 1 Contenuti

Dettagli

Linguaggio C - sezione dichiarativa: costanti e variabili

Linguaggio 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

Dettagli

La sezione di dichiarazione delle costanti 1.2 I tipi elementari Classificazione dei tipi Il tipo integer Il tipo boolean

La sezione di dichiarazione delle costanti 1.2 I tipi elementari Classificazione dei tipi Il tipo integer Il tipo boolean Laboratorio di Programmazione A.A. 2000\2001 La sezione di dichiarazione delle costanti 1.2 I tipi elementari Classificazione dei tipi Il tipo integer Il tipo boolean Editazione a cura di: de Pinto E.

Dettagli

2 Operatori matematici e costrutto if

2 Operatori matematici e costrutto if Questa dispensa propone esercizi sulla scrittura di algoritmi, in linguaggio C, utili alla comprensione delle operazioni tra numeri e del costrutto condizionale if. Si introducono anche le due funzioni

Dettagli

Ministero della Difesa Direzione Generale per il Personale Militare I Reparto

Ministero della Difesa Direzione Generale per il Personale Militare I Reparto Ministero della Difesa Direzione Generale per il Personale Militare I Reparto Concorso Interno, per titoli ed esami, a 300 posti per l ammissione al 20 corso di aggiornamento e formazione professionale

Dettagli

Università degli Studi di Ferrara

Università degli Studi di Ferrara Università degli Studi di Ferrara Corso di Laurea in Matematica - A.A. 2018-2019 Programmazione Lezione 5 Controllo di Flusso Docente: Michele Ferrari - michele.ferrari@unife.it Informazioni Inizio tutorato

Dettagli

a.a Codice corso: 21012, HOMEWORKS

a.a Codice corso: 21012, HOMEWORKS HOMEWORKS Questi esercizi saranno proposti ogni 2 settimane e forniti sempre SENZA soluzioni. Come materiale complementare ai libri di testo e alle lezioni frontali e di esercitazione, si consiglia di

Dettagli

Fondamenti di Informatica T-1. Introduzione al linguaggio Java Input/output, variabili, tipi

Fondamenti di Informatica T-1. Introduzione al linguaggio Java Input/output, variabili, tipi Introduzione al linguaggio Java Input/output, variabili, tipi 2 Programmi e linguaggi Algoritmo sequenza finita di passi per risolvere in un tempo finito un problema Linguaggio di programmazione notazione

Dettagli

Fondamenti di Informatica T-1

Fondamenti di Informatica T-1 Fondamenti di Informatica T-1 Iterazione Tutor: Angelo Feraudo angelo.feraudo2@unibo.it a.a. 2018/2019 Fondamenti di Informatica T-1 Angelo Feraudo 1 / 22 ITERAZIONE Iterazione: Strumento che consente

Dettagli

Elementi lessicali. Lezione 4. La parole chiave. Elementi lessicali. Elementi lessicali e espressioni logiche. Linguaggi di Programmazione I

Elementi 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

Dettagli

ESPRESSIONI. Ivan Lanese

ESPRESSIONI. Ivan Lanese ESPRESSIONI Ivan Lanese Argomenti Espressioni Spaziatura e commenti Per domani Domani sarete divisi in 2 gruppi Il gruppo coi portatili qui in aula Controllate di essere in grado di avviare Eclipse sul

Dettagli

ESECUZIONE DI PROGRAMMI C SU MACCHINE REALI. Docente: Giorgio Giacinto AA 2008/2009. formalizzazione degli algoritmi in linguaggio C

ESECUZIONE DI PROGRAMMI C SU MACCHINE REALI. Docente: Giorgio Giacinto AA 2008/2009. formalizzazione degli algoritmi in linguaggio C Università degli Studi di Cagliari Corso di Laurea Specialistica in Ingegneria per l Ambiente ed il Territorio Corso di Laurea Specialistica in Ingegneria Civile - Strutture FONDAMENTI DI INFORMATICA 2

Dettagli

Informatica. Stefano Lodi. 16 novembre in linguaggio C

Informatica. Stefano Lodi. 16 novembre in linguaggio C Informatica in linguaggio C Stefano Lodi 16 novembre 2005 0-0 Algoritmi, linguaggi, programmi, processi trasformazione di un insieme di dati iniziali in un insieme di risultati finali mediante istruzioni

Dettagli

Introduzione al C. Lez. 1 Elementi. Rossano Venturini

Introduzione al C. Lez. 1 Elementi. Rossano Venturini Introduzione al C Lez. 1 Elementi Rossano Venturini rossano@di.unipi.it Pagine del corso http://didawiki.cli.di.unipi.it/doku.php/informatica/all-b/start http://algoritmica.spox.spoj.pl/alglab2013 Lezioni

Dettagli

Tipi di dato semplici

Tipi di dato semplici Tipi di dato semplici Informatica B Tipi di dati q In C esistono diversi tipi di dato built-in, tra cui int: numeri interi float: numeri con virgola (singola precisione) double : numeri con virgola (doppia

Dettagli

Silvia Rossi. C elementi di un programma. Informatica. Programmazione I. Lezione n.

Silvia Rossi. C elementi di un programma. Informatica. Programmazione I. Lezione n. Silvia Rossi C elementi di un programma Lezione n. 2 Informatica Programmazione I silvia.rossi@unina.it Programma Una sequenza di istruzioni che il calcolatore esegue per produrre i risultati richiesti

Dettagli

Programmazione in Java (I modulo)

Programmazione 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

Dettagli

L assegnamento. Andrea Marin. a.a. 2011/2012. Università Ca Foscari Venezia Laurea in Informatica Corso di Programmazione part-time

L assegnamento. Andrea Marin. a.a. 2011/2012. Università Ca Foscari Venezia Laurea in Informatica Corso di Programmazione part-time Andrea Marin Università Ca Foscari Venezia Laurea in Informatica Corso di Programmazione part-time a.a. 2011/2012 Abbiamo visto È conveniente definire una macchina astratta C Lo stato della macchina ci

Dettagli

Variabili e input/ Alessandra Giordani Lunedì 18 marzo

Variabili e input/ Alessandra Giordani Lunedì 18 marzo Variabili e input/ output da tastiera Alessandra Giordani agiordani@disi.unitn.it Lunedì 18 marzo 2013 http://disi.unitn.it/~agiordani/ Es. compilazione helloworld.c 2 Variabili e valori Una variabile

Dettagli

#include <stdio.h> /* l esecuzione comincia dalla funzione main */ int main()

#include <stdio.h> /* l esecuzione comincia dalla funzione main */ int main() Primi passi Il mio primo programma #include /* l esecuzione comincia dalla funzione main */ int main() { printf( Hello World!\n" ); return 0; /* il programma termina con successo */ } /* fine

Dettagli

Struttura logica del computer (semplificata)

Struttura logica del computer (semplificata) Struttura logica del computer (semplificata) INPUT (TASTIERA) SISTEMA OPERATIVO R OUTPUT (MONITOR) A ISTRUZIONI PROGRAMMA M ZONA DATI (variabili e costanti) 21 13 45 A B C ALU UC Unità aritmetico-logica

Dettagli

Autore: Prof. Agostino Sorbara ITIS "M. M. Milano" Polistena (RC)

Autore: Prof. Agostino Sorbara ITIS M. M. Milano Polistena (RC) con questo nome si indica in genere un pezzo di programma, dotato di una propria identità: un modulo, ad esempio, potrebbe essere l insieme di alcune funzioni C, o Pascal, che risiedono in un unico file

Dettagli

Fondamenti di Informatica T1 Introduzione al linguaggio Java Input/Output-Variabili-Tipi

Fondamenti di Informatica T1 Introduzione al linguaggio Java Input/Output-Variabili-Tipi Fondamenti di Informatica T1 Introduzione al linguaggio Java Input/Output-Variabili-Tipi Tutor Melissa Licciardello melissa.licciardell2@unibo.it Melissa Licciardello Fondamenti di Informatica T1 1 / 15

Dettagli

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Struttura di un programma Java

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Struttura di un programma Java Fondamenti di Informatica INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA 1 Struttura di un programma Java Un programma Java consiste in un insieme di definizioni di classi. In genere

Dettagli

Funzioni, Stack e Visibilità delle Variabili in C

Funzioni, 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

Dettagli

Laboratorio di Programmazione Lezione 1. Cristian Del Fabbro

Laboratorio di Programmazione Lezione 1. Cristian Del Fabbro Laboratorio di Programmazione Lezione 1 Cristian Del Fabbro Reperibilità homepage corso: https://users.dimi.uniud.it/~cristian.delfabbro/teaching.php email: cristian.delfabbro@uniud.it telefono: 0432 558676

Dettagli

Corso di laurea triennale in Informatica Turno A

Corso di laurea triennale in Informatica Turno A Corso di laurea triennale in Informatica Turno A Docente: Anna Morpurgo Tutor: Stefano Sambruna Dipartimento di Informatica Università degli Studi di Milano A.A. 2018-2019 6 novembre 2018 - Programma svolto

Dettagli

I/O da tastiera + Alessandra Giordani Lunedì 2 maggio

I/O da tastiera + Alessandra Giordani Lunedì 2 maggio I/O da tastiera + costrutti while e if Alessandra Giordani agiordani@disi.unitn.it Lunedì 2 maggio 2011 http://disi.unitn.it/~agiordani/ Ripasso funzione printf() Usata per stampare il contenuto di una

Dettagli

Il corpo di tutte le funzioni deve essere contenuto tra parentesi graffe

Il corpo di tutte le funzioni deve essere contenuto tra parentesi graffe Primi passi Il mio primo programma #include /* l esecuzione comincia dalla funzione main */ int main() { printf( Hello World!\n" ); return 0; /* il programma termina con successo */ } /* fine

Dettagli

Introduzione al C. Lez. 1 Elementi. Rossano Venturini

Introduzione al C. Lez. 1 Elementi. Rossano Venturini Introduzione al C Lez. 1 Elementi Rossano Venturini rossano.venturini@isti.cnr.it URL del corso http://www.cli.di.unipi.it/doku/doku.php/informatica/all-b/start Lezioni - Lunedì 16-18 Aula M - Martedì

Dettagli

Esercizi su Scratch. Esegui la Somma e il Prodotto dei numeri inseriti in Input fino a che non inserisco la vocale e.

Esercizi su Scratch. Esegui la Somma e il Prodotto dei numeri inseriti in Input fino a che non inserisco la vocale e. Esercizi su Scratch Esercizio 1: Indovina il numero Il computer pensa un numero compreso tra uno e 100 e tu lo devi indovinare. Prevedi un avviso che indichi se il Tuo numero è più grande o più piccolo.

Dettagli

Laboratorio di Programmazione 1. Docente: dr. Damiano Macedonio Lezione 4 24/10/2013

Laboratorio di Programmazione 1. Docente: dr. Damiano Macedonio Lezione 4 24/10/2013 Laboratorio di Programmazione 1 1 Docente: dr. Damiano Macedonio Lezione 4 24/10/2013 Original work Copyright Sara Migliorini, University of Verona Modifications Copyright Damiano Macedonio, University

Dettagli

Variabili. Unità 2. Domenico Daniele Bloisi. Corso di Programmazione e Metodi Numerici Ingegneria Aerospaziale BAER

Variabili. Unità 2. Domenico Daniele Bloisi. Corso di Programmazione e Metodi Numerici Ingegneria Aerospaziale BAER Corso di Programmazione e Metodi Numerici Ingegneria Aerospaziale BAER Domenico Daniele Bloisi Docenti Metodi Numerici prof. Vittoria Bruni vittoria.bruni@sbai.uniroma1.it Programmazione prof. Domenico

Dettagli

Laboratorio di Programmazione Laurea in Bioinformatica

Laboratorio di Programmazione Laurea in Bioinformatica Laboratorio di Programmazione Laurea in Bioinformatica 28 novembre 2007 1 Programmazione strutturata 1.1 Esercizio 1 Si scriva lo pseudocodice di un programma che calcola la media di due numeri reali.

Dettagli

A.A Laboratorio n 1 Ing. Gian Enrico Conti. Milano, XX mese 20XX

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: gianenrico.conti@mail.polimi.it

Dettagli

Risoluzione di un problema

Risoluzione di un problema Algoritmi Risoluzione di un problema Descrizione di un problema! Individuazione di un ALGORITMO! Metodo risolutivo (progetto) Introduzione 2 Algoritmo Sequenza finita di mosse che risolve in un tempo finito

Dettagli

Informatica B Esercitazione 1

Informatica B Esercitazione 1 Facoltà di Ingegneria Industriale Laurea in Ingegneria Energetica, Meccanica e dei Trasporti Dipartimento di Elettronica e Informazione Informatica B Esercitazione 1 Introduzione al C Andrea Galbiati galbiati@elet.polimi.it

Dettagli

LEZIONE 1 LE BASI DEL LINGUAGGIO C

LEZIONE 1 LE BASI DEL LINGUAGGIO C LEZIONE 1 LE BASI DEL LINGUAGGIO C Simone Marchesini Roberto Pagliarini Dipartimento di Informatica Università di Verona COS È? Il C è un linguaggio di programmazione che permette di salvare i valori in

Dettagli

Char. Unità 2. Corso di Laboratorio di Informatica Ingegneria Clinica BCLR. Domenico Daniele Bloisi

Char. Unità 2. Corso di Laboratorio di Informatica Ingegneria Clinica BCLR. Domenico Daniele Bloisi Corso di Ingegneria Clinica BCLR Domenico Daniele Bloisi Docente Ing. Domenico Daniele Bloisi, PhD Ricercatore Dipartimento di Ingegneria Informatica, Automatica e Gestionale Antonio Ruberti Via Ariosto

Dettagli

Il linguaggio C. Prof. E. Occhiuto INFORMATICA 242AA a.a. 2010/11 pag. 1

Il linguaggio C. Prof. E. Occhiuto INFORMATICA 242AA a.a. 2010/11 pag. 1 Il linguaggio C I linguaggi di programmazione ad alto livello sono linguaggi formali ( sintassi e semantica formalmente definite) però sono compatti e comprensibili. Le tipologie di linguaggi sono: procedurali

Dettagli

Introduzione al C. Lez. 1 Elementi

Introduzione al C. Lez. 1 Elementi Introduzione al C Lez. 1 Elementi Introduzione al C Strumento che adotteremo in queste esercitazioni per implementare e testare gli algoritmi visti a lezione Configurazione minimale suggerita: Editing

Dettagli

ECCOLO FINALMENTE!!!

ECCOLO FINALMENTE!!! ECCOLO FINALMENTE!!! Disponibile da fine giugno 160 pagine 15 euro 4 sezioni: aritmetica geometria problemi schede allegate Per ulteriori informazioni - in attesa dell' aggiornamento del sito - contattare

Dettagli

Il Linguaggio C. Caratteristiche. Caratteristiche. Esempio di programma in C. Tipi di dato primitivi in C. Dati

Il Linguaggio C. Caratteristiche. Caratteristiche. Esempio di programma in C. Tipi di dato primitivi in C. Dati Caratteristiche Il Linguaggio C Linguaggio sequenziale (lineare), imperativo, strutturato a blocchi usabile anche come linguaggio di sistema software di base sistemi operativi compilatori... FI - Algoritmi

Dettagli

IL LINGUAGGIO JAVA. Introduzione alla sintassi di Java La sintassi formalizza le regole sintattiche per scrivere frasi ben formate

IL LINGUAGGIO JAVA. Introduzione alla sintassi di Java La sintassi formalizza le regole sintattiche per scrivere frasi ben formate Fondamenti di Informatica IL LINGUAGGIO JAVA Sintassi, Semantica, Input, Tipi Elementari e Istruzione Condizionale 1 Introduzione alla sintassi di Java La sintassi formalizza le regole sintattiche per

Dettagli

ESECUZIONE DI PROGRAMMI C SU MACCHINE REALI. Docente: Giorgio Giacinto AA 2009/2010

ESECUZIONE DI PROGRAMMI C SU MACCHINE REALI. Docente: Giorgio Giacinto AA 2009/2010 Università degli Studi di Cagliari Corso di Laurea Specialistica in Ingegneria per l Ambiente ed il Territorio Corso di Laurea Specialistica in Ingegneria Civile - Strutture FONDAMENTI DI INFORMATICA 2

Dettagli

Costanti e Variabili

Costanti e Variabili Parte 3 Costanti e Variabili Identificatori Un identificatore è un nome che viene associato a diverse entità (costanti, tipi, variabili, funzioni, ecc.) e serve ad identificare la particolare entità Gli

Dettagli

9 - Array. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

9 - Array. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo 9 - Array 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 Corso di Laurea

Dettagli

Fondamenti di Informatica T-1. Variabili, costanti e operazioni Selezione

Fondamenti di Informatica T-1. Variabili, costanti e operazioni Selezione Variabili, costanti e operazioni Selezione 2 Variabili Dichiarazione di una variabile: ; Esempio: variabile numerica intera numauto: int numauto; Assegnare alla variabile

Dettagli

#include <stdio.h> main() { - 1 -

#include <stdio.h> main() { - 1 - Un primo esempio di programma Ogni programma C deve contenere una funzione speciale chiamata main che indica il punto in cui inizia l esecuzione del programma. La funzione main è unica all interno di ogni

Dettagli

Capitolo 4. Tipi di dati fondamentali. Cay S. Horstmann Concetti di informatica e fondamenti di Java quarta edizione

Capitolo 4. Tipi di dati fondamentali. Cay S. Horstmann Concetti di informatica e fondamenti di Java quarta edizione Capitolo 4 Tipi di dati fondamentali Cay S. Horstmann Concetti di informatica e fondamenti di Java quarta edizione Convenzioni per i nomi ContoCorrente: nome di una classe contocorrente: può essere una

Dettagli

Laboratorio 1. 2) All interno della directory c:\temp\cognome\codici creare il file sorgente hello.c contenente il seguente codice:

Laboratorio 1. 2) All interno della directory c:\temp\cognome\codici creare il file sorgente hello.c contenente il seguente codice: Corso di Ingegneria Biomedica Corso di Ingegneria Elettronica Insegnamento di Informatica I a.a. 2007-08 Laboratorio 1 Durante le esercitazioni verra utilizzato il compilatore a riga di comando DJGPP,,

Dettagli

Variabili e tipi di. Alessandra Giordani Lunedì 11 aprile

Variabili e tipi di. Alessandra Giordani Lunedì 11 aprile Variabili e tipi di dato in C Alessandra Giordani agiordani@disi.unitn.it Lunedì 11 aprile 2011 http://disi.unitn.it/~agiordani/ Stringhe Un altro tipo di insieme che vorremmo poter rappresentare è quello

Dettagli

Elementi del linguaggio Python

Elementi del linguaggio Python Elementi del linguaggio Python Informatica@SEFA 07/08 - Lezione Massimo Lauria http://massimolauria.net/courses/infosefa07/ Venerdì, 9 Settembre 07 Tipi numerici e calcoli In

Dettagli

Laboratorio di Programmazione. Programmini più complessi

Laboratorio di Programmazione. Programmini più complessi Programmini più complessi AreaRettangolo.java /* AreaRettangolo calcola l area di un rettangolo */ public class AreaRettangolo { public static void main(string args[]) { int base=3; int altezza=4; System.out.print("L

Dettagli

Informatica A (per gestionali) A.A. 2004/2005. Esercizi C. Strutture di controllo

Informatica A (per gestionali) A.A. 2004/2005. Esercizi C. Strutture di controllo Informatica A (per gestionali) A.A. 2004/2005 Esercizi C Strutture di controllo 1 Indice 1 Strutture di controllo...3 1.1 Multiplo...3 1.2 Massimo Comun Divisore...3 1.3 Valutazione triangolo...4 1.4 Calcolatrice...5

Dettagli

Laboratorio di Architettura degli Elaboratori A.A. 2014/15 Programmazione Assembly

Laboratorio di Architettura degli Elaboratori A.A. 2014/15 Programmazione Assembly Laboratorio di Architettura degli Elaboratori A.A. 2014/15 Programmazione Assembly Scrivere il codice ARM che implementi le specifiche richieste e quindi verificarne il comportamento usando il simulatore

Dettagli

Caratteristiche generali del linguaggio Visual Basic

Caratteristiche generali del linguaggio Visual Basic Caratteristiche generali del linguaggio Visual Basic Per ottenere un aiuto contestuale dall help di Visual Basic sulla sintassi di funzioni o, oppure su proprietà, eventi o metodi, basta selezionare la

Dettagli

Lezione 1. Ing. Colazzo Sebastiano

Lezione 1. Ing. Colazzo Sebastiano Lezione 1 Ing. Colazzo Sebastiano Linguaggi macchina: lingua naturale di un particolare computer, esso consiste di sequenze di numeri (1 o 0) e dipende dalla macchina 0000111101 1111110001 0011001111 Linguaggi

Dettagli

Programmare. Definire una sequenza di istruzioni che specificano come effettuare una elaborazione

Programmare. Definire una sequenza di istruzioni che specificano come effettuare una elaborazione Python Programmare Definire una sequenza di istruzioni che specificano come effettuare una elaborazione Le istruzioni devono essere date in un linguaggio comprensibile dal calcolatore. In generele questi

Dettagli

Informatica B Esercitazione 3

Informatica B Esercitazione 3 Facoltà di Ingegneria Industriale Laurea in Ingegneria Energetica, Meccanica e dei Trasporti Dipartimento di Elettronica e Informazione Informatica B Esercitazione 3 Array e matrici Andrea Galbiati galbiati@elet.polimi.it

Dettagli