Indice. Prefazione. 3 Oggetti e Java 53

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Indice. Prefazione. 3 Oggetti e Java 53"

Transcript

1 Indice Prefazione xv 1 Architettura dei calcolatori Calcolatori e applicazioni Alcuni esempi di applicazioni Applicazioni e interfacce Architettura dei calcolatori Hardware e software Macchina di von Neumann Tecnologia dei calcolatori Codifica dei dati Microprocessore Memoria centrale Memorie secondarie Il sistema operativo Architettura di un sistema operativo Calcolatori e programmazione 21 2 Oggetti software Programmi e programmazione Introduzione agli oggetti software Esempi di oggetti software L oggetto software System.out L oggetto software Math Un oggetto software per la lettura dalla tastiera Robot e labirinti Oggetti software Classi e costruzione di oggetti software Costruzione di oggetti software Componenti di una classe Esempi di classi La classe Math Le classi Robot e Labirinto Il linguaggio UML 50 3 Oggetti e Java 53

2 vi Indice 3.1 Introduzione alla programmazione in Java Il linguaggio di programmazione Java Classi Java Programmi Java API di Java Programmazione in Java Introduzione a Java (per esempi) Scrittore sullo schermo Calcolo di una radice quadrata Perimetro di un triangolo Lettura e somma di due numeri interi Robot in un labirinto Una classe per istanziare oggetti 82 4 Strumenti per la programmazione Strumenti per la programmazione Editing ed editor Compilazione e compilatori Esecuzione Compilatori e interpreti Compilazione ed esecuzione di programmi Java Java Development Kit Che cosa fare in pratica Errori di programmazione Ambienti integrati di sviluppo 97 5 Problemi, algoritmi e oggetti Problemi e algoritmi Comprensione del problema Identificazione di un algoritmo per il problema Dall algoritmo all oggetto Qualità degli algoritmi Introduzione agli algoritmi (per esempi) Un linguaggio per scrivere algoritmi Progettazione di algoritmi Problemi di ingresso-uscita Lettura e somma di due numeri interi Somma di una sequenza di numeri interi Lunghezza di una sequenza Somma dei pari e dei dispari in una sequenza Somma di una sequenza di dieci numeri Somma dei primi N numeri interi positivi Traccia dell esecuzione di un metodo o di un algoritmo La formula di Gauss Attraversamento di labirinti Attraversamento di labirinti lineari 132

3 Indice vii Attraversamento di labirinti Le basi del linguaggio Java Sintassi e semantica Introduzione alla sintassi di Java Introduzione alla semantica di Java Semantica delle espressioni Semantica delle istruzioni Sintassi, semantica ed errori Introduzione alle istruzioni di Java Leggibilità Stile e convenzioni di codifica Commenti Scelta dei nomi Indentazione Ordine delle istruzioni e delle dichiarazioni Repertorio di istruzioni Uso di oggetti Tipi ed espressioni Uso di oggetti Operazioni e messaggi Operazioni e metodi Invocazione di metodi Accesso a proprietà di oggetti Descrizione di oggetti e classi Descrizione di metodi Descrizione di metodi che restituiscono un valore Descrizione di variabili Selezione di metodi Creazione di oggetti e costruttori Variabili e assegnazione Variabili e assegnazione Variabili e aree di memoria Dichiarazione di variabili Assegnazione e accesso Costanti Variabili riferimento Errori di programmazione Classificazione degli errori Errori sintattici Errori di semantica statica Errori di semantica dinamica 194

4 viii Indice 10.5 Errori logici Discussione Tipi ed espressioni Tipi Espressioni Tipi primitivi per numeri interi Introduzione al tipo primitivo int Valutazione delle espressioni Rappresentazione dei numeri interi Altri tipi primitivi numerici interi Tipi primitivi per numeri reali La classe Math Conversione tra tipi Conversione implicita Conversione esplicita Il tipo primitivo char Algebra di Boole e tipo primitivo boolean Algebra di Boole Il tipo primitivo boolean Tipi riferimento e stringhe Tipi riferimento Stringhe e oggetti String Uso di variabili riferimento Uso di oggetti String Stringhe e tipi primitivi Conversione da tipi primitivi a stringhe Conversione da stringhe a tipi primitivi Il metodo charat Concatenazione di stringhe Confronto tra stringhe Sulla composizione dell invocazione di metodi Riferimenti e uguaglianza Il letterale null Istruzioni condizionali e blocco Introduzione alle istruzioni di controllo Istruzione condizionale if-else Blocco (istruzione composta) Istruzione condizionale if Istruzioni condizionali annidate Cascata di istruzioni if-else Il problema dell else mancante Uso di predicati complessi Linee guida 252

5 Indice ix Errori comuni Istruzioni ripetitive Istruzioni ripetitive Istruzione ripetitiva while Istruzione ripetitiva for Istruzione for con variabile contatore Istruzione ripetitiva do-while Confronto tra istruzioni ripetitive Linee guida Istruzioni ripetitive e cicli Errori comuni Ciclo infinito Errore di uno Istruzioni ripetitive annidate Terminazione precoce Definizione di metodi Introduzione alla definizione di metodi Definizione di un semplice metodo Uso di classi e metodi Metodi e variabili locali Metodi con parametri Metodi che restituiscono un valore Sovraccarico di nomi Auto-referenziazione Classi e applicazioni Visibilità delle variabili Programmazione strutturata (e non) Effetti collaterali Metodi di supporto Il modificatore private Legame dei parametri Legame dei parametri per valore Legame dei parametri per riferimento Linee guida Correttezza Introduzione alla correttezza Correttezza dei metodi Specifica di un metodo Correttezza di un metodo Correttezza e responsabilità Verifica di correttezza Test a scatola nera Test a scatola trasparente 331

6 x Indice Metodi di test Individuazione e correzione degli errori Test di un insieme di metodi Iterazione Accesso a sequenze Accumulazione Conteggio Verifica esistenziale Verifica universale Ricerca File di testo Definizione di classi Classi per istanziare oggetti Esempio: la classe Punto Variabili d istanza Accesso a variabili d istanza Metodi d istanza Costruttori Ulteriori aspetti nella definizione di classi Auto-referenziazione Il metodo tostring Il metodo equals Sovraccarico del costruttore Metodi di classe Variabili di classe Classi e oggetti Occultamento dell informazione Esempio: la classe Rettangolo Classi per oggetti dati Array Il problema degli studenti da promuovere Array Array in Java Uso di array Dichiarazione di variabili array e tipi array Creazione di array Accesso a un array Il problema degli studenti da promuovere Lunghezza di un array Array e metodi Letterali array Array e accesso posizionale Somma degli elementi di un array 393

7 Indice xi Visualizzazione degli elementi di un array Calcolo del massimo elemento di un array di interi Verifica se un array è crescente Coppia di elementi uguali Array paralleli Clonazione di array Uguaglianza tra array Elementi positivi di un array di interi Array e oggetti Parametro del metodo main Ricerca sequenziale Ricerca binaria Fusione di sequenze ordinate Array di array Array bidimensionali Creazione e uso di array bidimensionali Array di array Gestione di array di array Visualizzazione degli elementi di un array di array Somma degli elementi di un array di array Uguaglianza tra array di array Clonazione di array di array Modello runtime Modello runtime e gestione della memoria Esecuzione di metodi e costruttori Esecuzione di metodi: un esempio Esecuzione di metodi: discussione Gestione degli oggetti Gestione di oggetti: un esempio Gestione di oggetti: discussione Vita delle variabili Ricorsione Definizioni induttive Definizione induttiva di insiemi Definizione induttiva di funzioni Metodi ricorsivi Definizione di metodi ricorsivi Esecuzione di metodi ricorsivi Progettazione di metodi ricorsivi Errori comuni Ricorsione lineare e non lineare Tipi ricorsivi Tipi ricorsivi e metodi ricorsivi 462

8 xii Indice 22.4 Ricorsione e stringhe Ricorsione e array Ricerca binaria Quando usare (o non usare) la ricorsione Complessità Complessità dei metodi Modello di costo Analisi di caso peggiore Complessità asintotica Modello di costo asintotico Operazione dominante Complessità di algoritmi e problemi Complessità della ricerca in un array Complessità della ricerca sequenziale Complessità della ricerca binaria Discussione Ordinamento Ordinamento di un array Ordinamento di array e API di Java Ordinamento per selezione Complessità dell ordinamento per selezione Ordinamento a bolle Complessità dell ordinamento a bolle Ordinamento per inserzione Complessità dell ordinamento per inserzione Ordinamento per fusione Complessità dell ordinamento per fusione Ordinamento veloce Complessità dell ordinamento veloce Risultati sperimentali Ereditarietà epolimorfismo Estensione di classi Polimorfismo L operatore instanceof Conversione esplicita La classe Object Estensione di classi e progettazione di classi Il modificatore protected Classi astratte Interfacce Collezioni Introduzione al Java Collections Framework 527

9 Indice xiii 26.2 Collezioni Insiemi Iteratori Liste Mappe Interfacce grafiche Interfacce grafiche La classe JFrame Componenti Struttura di un interfaccia grafica Gestori di layout Eventi, sorgenti e ascoltatori Gestione di eventi Gestione di più sorgenti di eventi Programmazione ad eventi Programmazione visuale 555

10

11 Prefazione L informatica è la disciplina che si occupa, sia dal punto di vista scientifico che da quello tecnologico, del trattamento automatico delle informazioni, che avviene mediante l elaborazione dei dati. Da una parte, dunque, l informatica si occupa della rappresentazione delle informazioni mediante dati, che sono informazioni elementari. Ad esempio, il sistema informatico di una università deve mantenere informazioni circa i suoi studenti, che poi si concretizzano, in pratica, mediante dati come i nomi e le matricole degli studenti. Dall altra parte, l informatica si occupa dell elaborazione di queste informazioni, per memorizzarle e ritrovarle oppure per produrre nuove informazioni. Ad esempio, il sistema informatico dell università deve consentire di memorizzare nuove informazioni circa gli esami sostenuti dagli studenti, ma anche di produrre le relative certificazioni. L informatica è una disciplina scientifica; è la scienza del trattamento dell informazione, che studia nozioni come le informazioni, i problemi e gli algoritmi, ad un livello astratto, concettuale e metodologico, con formalismi ispirati alla logica e alla matematica. L informatica è anche una disciplina tecnologica; èla tecnologia dell elaborazione dei dati, che si occupa della gestione dei dati e della realizzazione dei programmi, ad un livello concreto, pragmatico, tecnologico, legato al calcolatore. Fondamenti di informatica: Oggetti e Java Questo libro fornisce un introduzione all informatica ed alla programmazione orientata agli oggetti. Esso è principalmente rivolto agli studenti di corsi universitari di informatica dei primi anni di facoltà di discipline scientifiche. Come testo di fondamenti di informatica, vengono presentati i principali aspetti dell informatica come disciplina per la soluzione automatica di problemi, quali l architettura dei calcolatori e gli elementi di base della programmazione, nonché aspetti metodologici e qualitativi, come la progettazione di algoritmi, la correttezza e la complessità. L obiettivo è fornire al lettore degli strumenti, sia tecnologici che metodologici e culturali, che siano efficaci e duraturi per affrontare in modo flessibile la rapida evoluzione tecnologica dell informatica. Questo testo parla anche di oggetti; nella programmazione a oggetti, un oggetto è un componente software. Il lettore apprenderà primaausare degli oggetti già disponibili, conoscendone il funzionamento esterno ma ignorandone le caratteristiche interne, e poi a realizzare dei nuovi oggetti, comprendendone le carat-

12 xvi Prefazione teristiche interne e le modalità di sviluppo. Questo testo segue un approccio a oggetti, nel senso che molti concetti vengono dapprima descritti dall esterno, per comprendere come si usano, e poi dall interno, per comprendere come funzionano e quali sono le relazioni tra caratteristiche interne ed esterne. Questo testo è un introduzione alla programmazione, e in particolare alla programmazione orientata agli oggetti. Esso presenta, in modo equilibrato, sia gli aspetti tradizionali della programmazione imperativa e strutturata, come l uso delle istruzioni di controllo, che gli aspetti più moderni della programmazione a oggetti, come l uso di oggetti e la definizione di classi. Il linguaggio di programmazione utilizzato in questo testo è Java. Si tratta di un linguaggio di programmazione moderno, che consente di presentare sia gli aspetti della programmazione strutturata che quelli della programmazione a oggetti. Tuttavia, questo non è un testo sulla programmazione in Java; il linguaggio Java, di cui tra l altro vengono presentate solo le caratteristiche principali, viene utilizzato come mezzo per illustrare i concetti, e non come fine. Il libro è ricco di esempi, illustrazioni ed esercizi, ma anche di linee guida e indicazioni dei principali errori comuni, per introdurre il lettore nel mondo della programmazione a oggetti con il linguaggio Java. Contenuti e uso didattico I contenuti di questo testo possono essere logicamente suddivisi in varie tematiche, come segue. 1. Il funzionamento e l architettura dei calcolatori, presentati come strumenti programmabili in grado di memorizzare ed elaborare dati (Capitolo 1). 2. Una panoramica introduttiva alla programmazione orientata agli oggetti e alla risoluzione di problemi (Capitoli da 2 a 5). 3. Una presentazione dettagliata sull uso di oggetti e sugli aspetti fondamentali della programmazione strutturata, nonché un introduzione alla verifica di correttezza dei programmi (Capitoli da 6 a 17). Questi capitoli forniscono al lettore una semantica precisa degli elementi fondamentali della programmazione. 4. Gestione di array (Capitoli 19 e 20). 5. Un introduzione al modello di esecuzione dei programmi e alla tecnica di programmazione della ricorsione (Capitoli 21 e 22). 6. Studio di alcuni algoritmi classici su array, di ricerca e ordinamento, anche con riferimento all efficienza e alla complessità dei programmi (Capitoli 19, 23 e 24). 7. Un introduzione alla programmazione orientata agli oggetti, in cui viene presentata la definizione di classi, l ereditarietà e il polimorfismo, nonché laloro applicazione nel contesto della gestione di collezioni e in quello della programmazione di interfacce grafiche (Capitoli 18 e da 25 a 27). Questo testo può essere utilizzato in corsi universitari di Fondamenti di informatica in modo abbastanza flessibile. Può essere usato, nella sua completezza, per

13 Prefazione xvii corsi per complessivi crediti formativi universitari oppure, in modo parziale, per un numero di crediti inferiore. Sono possibili diversi percorsi formativi. Con riferimento alla suddivisione in tematiche indicata in precedenza, la presentazione delle prime tre tematiche è fondamentale, e su di esse è possibile basare un corso di 5-6 crediti. La quarta e quinta tematica, insieme allo studio della definizione di classi (Capitolo 18), costituisce materiale per ulteriori 3-4 crediti. Infine, la sesta e la settima tematica riguardano contenuti tra loro indipendenti, e ciascuna di esse può essere usata per erogare degli ulteriori 1-2 crediti. Vale la pena ricordare che un credito formativo universitario (CFU) corrisponde a circa 25 ore complessive di studio, che normalmente vengono suddivise in circa 10 ore di didattica frontale (lezioni ed esercitazioni) e circa 15 ore di studio individuale. Il lettore è invitato a suddividere questo tempo dedicato allo studio individuale in modo equo tra studio tradizionale (libro, carta e penna) e studio al calcolatore (per verificare in pratica quanto studiato e per risolvere gli esercizi proposti). Materiale didattico aggiuntivo Materiale didattico di supporto e aggiuntivo a questo testo è disponibile presso il seguente sito web: In particolare sono disponibili: una libreria di classi chiamata fiji di supporto alla programmazione in Java, sviluppata appositamente per questo testo, con la relativa documentazione; il codice sorgente per gli esempi mostrati nel testo; le soluzioni di alcuni esercizi proposti nel testo, nonché degli ulteriori esercizi. Per i docenti sono disponibili anche dei lucidi che possono essere usati durante l erogazione di un corso basato su questo testo. Per segnalazioni di errori e per altri suggerimenti, l Autore può essere contattato attraverso il sito stesso. Esperienze e ringraziamenti L organizzazione e i contenuti di questo testo riflettono l esperienza didattica dell Autorein corsidi Fondamenti di informaticatenuti pressola Facoltà di Ingegneria dell Università di Roma Tre a partire dal Alla concezione di questo testo hanno contribuito, direttamente o indirettamente, numerosi colleghi e collaboratori, tra cui Alfonso Miola, Giuseppe Di Battista, Giuseppe Liotta, Paolo Atzeni, Paolo Merialdo, Valter Crescenzi, Carla Limongelli, Maurizio Patrignani, Maurizio Pizzonia, Walter Didimo, Fabio Vernacotola e Michele Ricciardi. A ciascuno di essi, nonché a coloro che ho dimenticato, va il mio più sincero ringraziamento. Soprattutto, sono debitore nei confronti dei miei numerosi studenti che nel corso degli anni, pur apprezzando il materiale

14 xviii Prefazione didattico da me prodotto costituito da dispense spesso incomplete e contenenti errori, hanno contributo alla crescita e all evoluzione di quel materiale e mi hanno spinto a completare questo testo. Ringrazio anche tutti i collaboratori della McGraw-Hill che mi hanno sostenuto, con molta pazienza, nella realizzazione di questo libro, e in modo particolare Rossana Cecchi, Chiara Tartara e Alessandra Porcelli. Voglio infine ringraziare mia moglie Paola e i miei figli Matteo e Gabriele, a cui è dedicata quest opera. Luca Cabibbo

Prefazione. Capitolo 1 Sistemi di elaborazione 1

Prefazione. Capitolo 1 Sistemi di elaborazione 1 Prefazione XI Capitolo 1 Sistemi di elaborazione 1 1.1 Algoritmo 1 1.2 Esecuzione 3 1.3 Memoria 4 1.4 Calcolo meccanico 5 1.5 Capacità di calcolo 7 1.6 Computer 8 Domande di verifica 11 Esercizi 11 Capitolo

Dettagli

Corso Programmazione Java Standard

Corso Programmazione Java Standard Corso Programmazione Java Standard Codice: ITJS0113 Durata: 40 ore Descrizione corso Questo corso fornisce una panoramica sulle varie sfaccettature della sintassi del linguaggio Java, integrata con mirate

Dettagli

Università degli studi di Roma Tor Vergata Ingegneria Medica Informatica I Programma del Corso

Università degli studi di Roma Tor Vergata Ingegneria Medica Informatica I Programma del Corso Obiettivi formativi Introdurre i principi del funzionamento di un elaboratore e della programmazione. Presentare gli approcci elementari alla soluzione di problemi (algoritmi)e al progetto di strutture

Dettagli

ISTITUTO SUPERIORE ENRICO FERMI. PROGRAMMAZIONE DEL GRUPPO DISCIPLINARE INFORMATICA IT INDIRIZZO INFORMATICA E TELECOMUNICAZIONI a.s.

ISTITUTO SUPERIORE ENRICO FERMI. PROGRAMMAZIONE DEL GRUPPO DISCIPLINARE INFORMATICA IT INDIRIZZO INFORMATICA E TELECOMUNICAZIONI a.s. ISTITUTO SUPERIORE ENRICO FERMI PROGRAMMAZIONE DEL GRUPPO DISCIPLINARE INFORMATICA IT INDIRIZZO INFORMATICA E TELECOMUNICAZIONI a.s. 2016/2017 ARTICOLAZIONE: INFORMATICA DISCIPLINA: INFORMATICA ORE SETTIMANALI:

Dettagli

Sommario PREFAZIONE...XI CAPITOLO 1: INTRODUZIONE AI COMPUTER, A INTERNET E AL WEB... 1 CAPITOLO 2: INTRODUZIONE ALLA PROGRAMMAZIONE IN C...

Sommario PREFAZIONE...XI CAPITOLO 1: INTRODUZIONE AI COMPUTER, A INTERNET E AL WEB... 1 CAPITOLO 2: INTRODUZIONE ALLA PROGRAMMAZIONE IN C... Sommario PREFAZIONE...XI Aggiornamenti e novità... xi Lo scopo di questo libro... xii Diagramma delle dipendenze... xii La metodologia di insegnamento... xiii Panoramica sul libro... xvi Ringraziamenti...

Dettagli

Docente: Prof. Marco Patella Tutor: Vincenzo Lomonaco

Docente: Prof. Marco Patella Tutor: Vincenzo Lomonaco Università di Bologna Facoltà di Ingegneria C.d.L. in Ing. Gestionale Fondamenti di Informatica T-1 (A-K) A.A. 2015/16 Docente: Prof. Marco Patella Tutor: Vincenzo Lomonaco 1 Obiettivi del corso Il corso

Dettagli

Introduzione. Fondamenti di Informatica 1. Dispensa 1 Gennaio Contenuti. Alfonso Miola. K Corso di Fondamenti di Informatica 1

Introduzione. Fondamenti di Informatica 1. Dispensa 1 Gennaio Contenuti. Alfonso Miola. K Corso di Fondamenti di Informatica 1 Alfonso Miola Dispensa 1 Gennaio 2001 1 Contenuti K Corso di K Programma del corso K Materiale didattico K Organizzazione didattica K Attività di laboratorio K Prove di valutazione ed esami 2 Corso di

Dettagli

La programmazione ad oggetti: chiamate di metodi. Overloading. This

La programmazione ad oggetti: chiamate di metodi. Overloading. This ISTITUTO D ISTRUZIONE SUPERIORE FERRARIS BRUNELLESCHI - EMPOLI Materia: INFORMATICA PROGRAMMA SVOLTO A.S. 2015/2016 Classe IV C Informatica Proff. Fabio Ciao / Simone Calugi Libro di testo: Cloud B P.

Dettagli

PIANO DI LAVORO. a.s. 2015 / 2016

PIANO DI LAVORO. a.s. 2015 / 2016 PIANO DI LAVORO a.s. 2015 / 2016 Materia: INFORMATICA Classe: terza informatica- sez. A Data di presentazione: 15/10/2015 DOCENTI FIRMA Cerri Marta Bergamasco Alessandra Posta elettronica: itisleon@tin.it

Dettagli

Linee di programmazione

Linee di programmazione Ministero dell Istruzione, dell Università e della Ricerca Ufficio Scolastico regionale per il Lazio Istituto Tecnico Industriale A. Pacinotti ISTITUTO TECNICO TECNOLOGICO - LICEO SCIENTIFICO DELLE SCIENZE

Dettagli

ISTITUTO STATALE D ISTRUZIONE SUPERIORE FERRARIS - BRUNELLESCHI EMPOLI Anno scolastico 2015/2016

ISTITUTO STATALE D ISTRUZIONE SUPERIORE FERRARIS - BRUNELLESCHI EMPOLI Anno scolastico 2015/2016 ISTITUTO STATALE D ISTRUZIONE SUPERIORE FERRARIS - BRUNELLESCHI EMPOLI Anno scolastico 2015/2016 Classe: 4^A inf Prof.ssa Lami Carla Prof. Simone Calugi Programma di INFORMATICA GENERALE, APPLICAZIONI

Dettagli

FONDAMENTI DI INFORMATICA

FONDAMENTI DI INFORMATICA Fondamenti di Informatica FONDAMENTI DI INFORMATICA Domenico Talia talia@deis.unical.it A.A. 2002-2003 Facoltà di Ingegneria UNICAL Fondamenti di Informatica - D. Talia - UNICAL 1 Fondamenti di Informatica

Dettagli

Basi di Dati Ingegneria Informatica e delle Telecomunicazioni

Basi di Dati Ingegneria Informatica e delle Telecomunicazioni Basi di Dati Ingegneria Informatica e delle Telecomunicazioni A.A. 2014/2015 Ing. Claudio Marrocco c.marrocco@unicas.it Obiettivi del corso Il corso mira ad introdurre agli studenti modelli e metodi per

Dettagli

Definizione di metodi

Definizione di metodi Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1 Dispensa 9 Definizione di metodi Carla Limongelli Novembre 2006 http://www.dia.uniroma3.it/~java/fondinf1/ Definizione di metodi 1 Contenuti

Dettagli

Definizione di classi

Definizione di classi Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1 Dispensa E05 Definizione di classi A. Miola Novembre 2006 http://www.dia.uniroma3.it/~java/fondinf1/ Definizione di classi 1 Contenuti

Dettagli

PROGRAMMA DI SCIENZE E TECNOLOGIE APPLICATE 2015/2016 Classe 2ª Sez. C Tecnologico

PROGRAMMA DI SCIENZE E TECNOLOGIE APPLICATE 2015/2016 Classe 2ª Sez. C Tecnologico ISTITUTO TECNICO STATALE MARCHI FORTI Viale Guglielmo Marconi n 16-51017 PESCIA (PT) - ITALIA PROGRAMMA DI SCIENZE E TECNOLOGIE APPLICATE 2015/2016 Classe 2ª Sez. C Tecnologico Docente PARROTTA GIOVANNI

Dettagli

IL LINGUAGGIO JAVA Input, Tipi Elementari e Istruzione Condizionale

IL 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

Dettagli

Esempio di Patto Formativo per la classe terza

Esempio di Patto Formativo per la classe terza Esempio di Patto Formativo per la classe terza COMPETENZE TRASVERSALI rispettare le consegne e la puntualità nell esecuzione dei compiti assegnati lavorare costruttivamente in gruppo e individualmente

Dettagli

I S T I T U T O T E C N I C O I N D U S T R I A L E S T A T A L E

I S T I T U T O T E C N I C O I N D U S T R I A L E S T A T A L E I S T I T U T O T E C N I C O I N D U S T R I A L E S T A T A L E G u g l i e l m o M a r c o n i V e r o n a Dipartimento di Progetto didattico disciplinare per le classi terze della articolazione Anno

Dettagli

Corso di Laurea in Ingegneria Informatica (L8) Anno Accademico 2015/2016 FONDAMENTI DI INFORMATICA

Corso di Laurea in Ingegneria Informatica (L8) Anno Accademico 2015/2016 FONDAMENTI DI INFORMATICA Dipartimento di Ingegneria Elettrica, Elettronica e Informatica Corso di Laurea in Ingegneria Informatica (L8) Anno Accademico 2015/2016 FONDAMENTI DI INFORMATICA Docente titolare dell insegnamento: Proff.

Dettagli

Strutture dati e loro organizzazione. Gabriella Trucco

Strutture dati e loro organizzazione. Gabriella Trucco Strutture dati e loro organizzazione Gabriella Trucco Introduzione I linguaggi di programmazione di alto livello consentono di far riferimento a posizioni nella memoria principale tramite nomi descrittivi

Dettagli

Le basi del linguaggio Java

Le 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

Dettagli

Introduzione al Calcolo Scientifico

Introduzione al Calcolo Scientifico Introduzione al Calcolo Scientifico Francesca Mazzia Dipartimento di Matematica Università di Bari Francesca Mazzia (Univ. Bari) Introduzione al Calcolo Scientifico 1 / 14 Calcolo Scientifico Insieme degli

Dettagli

Indice. Introduzione PARTE PRIMA LE BASI DEL C++: IL LINGUAGGIO C 1

Indice. Introduzione PARTE PRIMA LE BASI DEL C++: IL LINGUAGGIO C 1 Indice Introduzione XV PARTE PRIMA LE BASI DEL C++: IL LINGUAGGIO C 1 Capitolo 1 Una panoramica sul linguaggio C 3 1.1 Le origini e la storia del linguaggio C 3 1.2 Il C è un linguaggio di medio livello

Dettagli

ESERCIZI SVOLTI DI CALCOLO NUMERICO

ESERCIZI SVOLTI DI CALCOLO NUMERICO STEFANO BERRONE SANDRA PIERACCINI ESERCIZI SVOLTI DI CALCOLO NUMERICO con introduzione a Matlab R CLUT Stefano Berrone Dipartimento di Matematica Politecnico di Torino Sandra Pieraccini Dipartimento di

Dettagli

Programmazione di INFORMATICA e Laboratorio

Programmazione di INFORMATICA e Laboratorio ISIUO ECNICO SAALE settore ECNOLOGICO ad indirizzo: Elettronica ed Elettrotecnica - Informatica e elecomunicazioni Meccanica, Meccatronica ed Energia "VIORIO EMANUELE III" Via Duca della Verdura, 48-90143

Dettagli

ISTITUTO TECNICO INDUSTRIALE STATALE "G. MARCONI" Via Milano n PONTEDERA (PI) DIPARTIMENTO: Informatica

ISTITUTO TECNICO INDUSTRIALE STATALE G. MARCONI Via Milano n PONTEDERA (PI) DIPARTIMENTO: Informatica SETTEMBRE Seconda Liceo SA PROGRAMMAZIONE DI DIPARTIMENTO COORDINATA TEMPORALMENTE DISCIPLINA: Monte ore annuo 66 Libro di Testo E-book dal sito www.matematicamente.it. Pettarin ECDL Appunti forniti dal

Dettagli

Principi di Progettazione del Software a.a " Introduzione al corso! Prof. Luca Mainetti! Università del Salento!

Principi di Progettazione del Software a.a  Introduzione al corso! Prof. Luca Mainetti! Università del Salento! Principi di Progettazione del Software a.a. 2015-2016" Introduzione al corso! Prof. Luca Mainetti! Università del Salento! Il GSA Lab (www.gsalab.unisalento.it)" Laboratorio di ricerca in ingegneria del

Dettagli

PROGRAMMAZIONE DISCIPLINARE LICEO SCIENTIFICO OPZIONE SCIENZE APPLICATE INFORMATICA CLASSE QUINTA

PROGRAMMAZIONE DISCIPLINARE LICEO SCIENTIFICO OPZIONE SCIENZE APPLICATE INFORMATICA CLASSE QUINTA PROGRAMMAZIONE DISCIPLINARE PROGRAMMAZIONE DISCIPLINARE LICEO SCIENTIFICO OPZIONE SCIENZE APPLICATE INFORMATICA CLASSE QUINTA 1. Competenze: le specifiche competenze di base disciplinari previste dalla

Dettagli

Corso di Laurea Ingegneria Informatica

Corso di Laurea Ingegneria Informatica Corso di Laurea Ingegneria Informatica Presentazione del corso di Fondamenti di Informatica 2 C. Limongelli - A. Miola Febbraio 2007 http://www.dia.uniroma3.it/~java/fondinf2/ Presentazione Corso 1 Contenuti

Dettagli

Corso di Laurea Ingegneria Informatica Laboratorio di Informatica

Corso di Laurea Ingegneria Informatica Laboratorio di Informatica Corso di Laurea Ingegneria Informatica Laboratorio di Informatica Capitolo 4 Traduzione ed esecuzione di programmi Ottobre 2006 Traduzione ed esecuzione di programmi 1 Nota bene Alcune parti del presente

Dettagli

Linguaggio C Debugging

Linguaggio C Debugging FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Ing. DAVIDE PIERATTONI Facoltà di Ingegneria Università degli Studi di Udine Linguaggio C 2001 Pier Luca Montessoro - Davide Pierattoni (vedere nota

Dettagli

APPUNTI PER IL CORSO DI ALFABETIZZAZIONE INFORMATICA

APPUNTI PER IL CORSO DI ALFABETIZZAZIONE INFORMATICA Università degli Studi di Udine CENTRO SERVIZI INFORMATICI E TELEMATICI Via delle Scienze, 208-33100 UDINE (Italy) Tel. +39-0432-558900 Fax +39-432-558911 CF 80014550307 P. IVA 01071600306 Internet E-mail:

Dettagli

Fondamenti di Informatica

Fondamenti di Informatica Fondamenti di Informatica Introduzione al Corso Prof. Arcangelo Castiglione A.A. 2016/17 Informazioni sul Corso 1/3 6 CFU 60 ore di lezione, suddivise in Lezioni frontali Esercitazioni pratiche al calcolatore

Dettagli

Linguaggi di alto livello, compilatori e interpreti

Linguaggi di alto livello, compilatori e interpreti Linguaggi di alto livello, compilatori e interpreti Percorso di Preparazione agli Studi di Ingegneria Università degli Studi di Brescia Docente: Massimiliano Giacomin Il punto della situazione STATO DATI

Dettagli

Concetti Introduttivi. Il Computer

Concetti Introduttivi. Il Computer Concetti Introduttivi Il Computer Introduzione Informazione Notizia, dato o elemento che consente di avere conoscenza più o meno esatta di fatti, situazioni, modi di essere Messaggio Tutto ciò che porta

Dettagli

Programmazione C Massimo Callisto De Donato

Programmazione C Massimo Callisto De Donato Università degli studi di Camerino Scuola di scienze e tecnologia - Sezione Informatica Programmazione C Massimo Callisto De Donato massimo.callisto@unicam.it www.cs.unicam.it/massimo.callisto LEZIONE

Dettagli

Programma svolto di INFORMATICA. Classe 3 - indirizzo MERCURIO A.S. 2009/2010

Programma svolto di INFORMATICA. Classe 3 - indirizzo MERCURIO A.S. 2009/2010 ISTITUTO TECNICO COMMERCIALE N. DELL ANDRO - Santeramo in Colle (BA) Programma svolto di INFORMATICA Classe 3 - indirizzo MERCURIO A.S. 2009/2010 Proff. Rosalia Barbara Schiavarelli, Antonio Antonicelli

Dettagli

Che cos e l Informatica. Informatica generale. Caratteristiche fondamentali degli algoritmi. Esempi di algoritmi. Introduzione

Che cos e l Informatica. Informatica generale. Caratteristiche fondamentali degli algoritmi. Esempi di algoritmi. Introduzione Che cos e l Informatica Scienza dell elaborazione dell informazione Informatica generale non si riduce all utilizzo di strumenti (e.g. linguaggi di programmazione e basi di dati); si occupa del trattamento

Dettagli

Fondamenti di Programmazione

Fondamenti di Programmazione Fondamenti di Programmazione (con linguaggio di riferimento C++) Gianfranco Rossi Università di Parma Dip. di Matematica e Informatica 43100 Parma (Italy) gianfranco.rossi@unipr.it Indice 1 Introduzione

Dettagli

Programma svolto di INFORMATICA. Classe 3M - indirizzo MERCURIO A.S. 2010/2011

Programma svolto di INFORMATICA. Classe 3M - indirizzo MERCURIO A.S. 2010/2011 ISTITUTO TECNICO COMMERCIALE N. DELL ANDRO - Santeramo in Colle (BA) Programma svolto di INFORMATICA Classe 3M - indirizzo MERCURIO A.S. 2010/2011 Proff. Rosalia Barbara Schiavarelli, Antonio Antonicelli

Dettagli

Introduzione alla programmazione. Walter Didimo

Introduzione alla programmazione. Walter Didimo Introduzione alla programmazione Walter Didimo Programmi Un programma è una frase (anche molto lunga) che descrive delle azioni che devono essere svolte da un calcolatore La frase deve essere dettagliata

Dettagli

LINGUAGGI DI ALTO LIVELLO

LINGUAGGI DI ALTO LIVELLO LINGUAGGI DI ALTO LIVELLO Si basano su una macchina virtuale le cui mosse non sono quelle della macchina hardware Linguaggi di alto livello Barriera di astrazione C Fortran Modula-2 Cobol Algol Basic Ada

Dettagli

Indice Introduzione I fondamenti di C#

Indice Introduzione I fondamenti di C# Indice Introduzione XV Capitolo 1 I fondamenti di C# 1 1.1 L albero genealogico di C# 2 C: l inizio dell era moderna della programmazione 2 La creazione di OOP e C++ 3 La nascita di Internet e Java 4 La

Dettagli

CORSO DI PROGRAMMAZIONE. Cosimo Laneve/Ivan Lanese/Elena Giachino

CORSO DI PROGRAMMAZIONE. Cosimo Laneve/Ivan Lanese/Elena Giachino CORSO DI PROGRAMMAZIONE Cosimo Laneve/Ivan Lanese/Elena Giachino 1 argomenti 1. obiettivi del corso e sommario 2. syllabus del corso 3. modalità dell esame 4. questionari degli studenti 2 obiettivi 3 obiettivi

Dettagli

Sommario. Note alla traduzione... xix

Sommario. Note alla traduzione... xix Sommario Prefazione... xv L utilizzo del linguaggio C per insegnare a sviluppare programmi...xv Puntatori e organizzazione del testo...xvi Concetti di ingegneria del software...xvi Aspetti pedagogici...xvii

Dettagli

Programma del corso. Elementi di Programmazione. Introduzione agli algoritmi. Rappresentazione delle Informazioni. Architettura del calcolatore

Programma 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

Dettagli

REGISTRI D'ESAME CODICE ESAME CORSO DI LAUREA NOME DEL CORSO LAUREA CFU

REGISTRI D'ESAME CODICE ESAME CORSO DI LAUREA NOME DEL CORSO LAUREA CFU REGISTRI D'ESAME Con "" si intende la Triennale del Nuovo Ordinamento (Legge 270) Con "" si intende la Specialistica di due anni del Nuovo Ordinamento (Legge 270) CODICE ESAME CORSO DI LAUREA NOME DEL

Dettagli

Indice. Prefazione. Ringraziamenti dell Editore

Indice. Prefazione. Ringraziamenti dell Editore Prefazione Autori Ringraziamenti dell Editore XIV XXI XXII 1 Introduzione 1 1.1 Che cos è l informatica? 1 1.2 Il concetto di algoritmo 2 1.3 Esempio esteso: consultazione di una carta geografica 6 1.4

Dettagli

Corso Programmazione

Corso Programmazione Corso Programmazione 2008-2009 (docente) Fabio Aiolli E-mail: aiolli@math.unipd.it Web: www.math.unipd.it/~aiolli (docenti laboratorio) A. Ceccato, F. Di Palma, M. Gelain Dipartimento di Matematica Pura

Dettagli

Metodologie di Programmazione. ovvero, Principi e Tecniche per la costruzione di programmi

Metodologie di Programmazione. ovvero, Principi e Tecniche per la costruzione di programmi Metodologie di Programmazione ovvero, Principi e Tecniche per la costruzione di programmi 1 In questo corso Sviluppo in piccolo: Tempi: mesi/uomo v.s. anni/uomo Strumenti: personal v.s. professional Programmazione

Dettagli

Introduzione al Linguaggio C ed all IDE DEV-C++

Introduzione al Linguaggio C ed all IDE DEV-C++ Microsoft Windows e Dev-C++ Introduzione al Linguaggio C ed all IDE DEV-C++ 1 Le Esercitazioni in Laboratorio! MTA + MLAB1/2: Edificio Via Valotti, primo piano e piano interrato! Orario: Giovedì 14:30-17:30!

Dettagli

18 - Vettori. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

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

Dettagli

Ingegneria del Software 4. Introduzione a UML. Dipartimento di Informatica Università di Pisa A.A. 2014/15

Ingegneria del Software 4. Introduzione a UML. Dipartimento di Informatica Università di Pisa A.A. 2014/15 Ingegneria del Software 4. Introduzione a UML Dipartimento di Informatica Università di Pisa A.A. 2014/15 e per i modelli iterativi analisi peliminare analisi e progettazione realizzazione Necessità di

Dettagli

Java il Corso Fondamentale

Java il Corso Fondamentale Java il Corso Fondamentale Imparare a Programmare APP per Android, applicativi per Server e Desktop, applet e molto altro. IlTuoCorso - Ermes srl Via E.De Amicis 57 20123 Milano Il corso Ciao! Se desideri

Dettagli

Corso di Linguaggi di Programmazione + Laboratorio

Corso di Linguaggi di Programmazione + Laboratorio Corso di inguaggi di Programmazione + aboratorio Capitolo 1 - Introduzione Si ringrazia il Dott. Marco de Gemmis per la collaborazione nella predisposizione del materiale didattico Apprendimento di un

Dettagli

Programma di INFORMATICA

Programma di INFORMATICA Classe 2 a D Indirizzo AMMINISTRAZIONE FINANZA E MARKETING MODULO 1: Word professionale e la corrispondenza commerciale UD 1 Questione di stile 1.1 Gli stili 1.2 Applichiamo gli stili UD 2 Formattazione

Dettagli

Indice. Introduzione PARTE PRIMA FONDAMENTI 1

Indice. Introduzione PARTE PRIMA FONDAMENTI 1 Indice Introduzione XV PARTE PRIMA FONDAMENTI 1 Capitolo 1 Che cos è Flash 3 1.1 Gerarchia temporale 4 Implicazioni relative ad animazioni e dimensioni del file 4 Implicazioni per la programmazione 6 Scelta

Dettagli

IIS Via Silvestri ITIS Volta Programma svolto di Tecnologie Informatiche A.S. 2015/16 Classe 1 A

IIS Via Silvestri ITIS Volta Programma svolto di Tecnologie Informatiche A.S. 2015/16 Classe 1 A IIS Via Silvestri ITIS Volta Programma svolto di Tecnologie Informatiche A.S. 2015/16 Classe 1 A Modulo n 1 - Concetti informatici di base 1.1 Introduzione allo studio del computer 1.2 Rappresentazione

Dettagli

Indice. Prefazione. sommario.pdf 1 05/12/

Indice. Prefazione. sommario.pdf 1 05/12/ Prefazione xi 1 Introduzione 1 1.1 Evoluzione della progettazione dei sistemi digitali 1 1.2 Flusso di progettazione dei sistemi digitali 2 1.3 Obiettivi del libro 6 1.4 Struttura ragionata del libro 7

Dettagli

Marco Liverani PROGRAMMARE IN C. Guida al linguaggio attraverso esercizi svolti e commentati

Marco Liverani PROGRAMMARE IN C. Guida al linguaggio attraverso esercizi svolti e commentati Marco Liverani PROGRAMMARE IN C Guida al linguaggio attraverso esercizi svolti e commentati Indice Introduzione iii 1 Le basi del linguaggio 1 1.1 Un linguaggio imperativo........................... 1

Dettagli

Anno scolastico 2016/2017 ROMA - Corsi di formazione. PROGRAMMAZIONE DIDATTICA di MATEMATICA I CLASSE. Relatore: Alessandra Peleggi

Anno scolastico 2016/2017 ROMA - Corsi di formazione. PROGRAMMAZIONE DIDATTICA di MATEMATICA I CLASSE. Relatore: Alessandra Peleggi Anno scolastico 2016/2017 ROMA - Corsi di formazione PROGRAMMAZIONE DIDATTICA di MATEMATICA I CLASSE Relatore: Alessandra Peleggi Data Titolo dell unità Traguardi di Competenza Obiettivi Attività e contenuti

Dettagli

Corso di Fondamenti di Informatica e Laboratorio ato o T-AB

Corso di Fondamenti di Informatica e Laboratorio ato o T-AB Università degli Studi di Bologna Facoltà di Ingegneria Corso di Fondamenti di Informatica e Laboratorio ato o T-AB Corso di Laurea in Ingegneria Elettronica e Telecomunicazioni Prof. Michela Milano Prof.

Dettagli

Cosa è l Informatica?

Cosa è l Informatica? Cosa è l Informatica? Scienza degli elaboratori elettronici (Computer Science) Scienza dell informazione Scienza della rappresentazione, memorizzazione, elaborazione e trasmissione dell informazione Elaboratore

Dettagli

Concetti di Base sulla Programmazione. Prof.Ing.S.Cavalieri

Concetti di Base sulla Programmazione. Prof.Ing.S.Cavalieri Concetti di Base sulla Programmazione Prof.Ing.S.Cavalieri 1 La Programmazione Dato un problema INFORMATICO, programmare significa: Definire i dati in ingresso e il risultato che si vuole raggiungere Definire

Dettagli

Libri di testo, libri della biblioteca, dispense, appunti, attrezzature di laboratorio

Libri di testo, libri della biblioteca, dispense, appunti, attrezzature di laboratorio I.T.I. E. MAJORANA SOMMA VESUVIANA PROGRAMMAZIONE DELL ATTIVITA DIDATTICA A.S. 2015/2016 INDIRIZZO: INFORMATICA E TELECOMUNICAZIONI ARTICOLAZIONE: INFORMATICA DISCIPLINA: INFORMATICA CLASSE IV SEZ. A Situazione

Dettagli

I Nuovi Corsi di Laurea in Informatica. La laurea triennale (classe L-31) L

I Nuovi Corsi di Laurea in Informatica. La laurea triennale (classe L-31) L I Nuovi Corsi di Laurea in Informatica La laurea triennale (classe L-31) L Obiettivi La progettazione del nuovo Corso di Laurea è avvenuto seguendo una serie di linee-guida, che ne costituiscono altrettanti

Dettagli

Compitino di Laboratorio di Informatica CdL in Matematica 13/11/2007 Teoria Compito A

Compitino 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

Dettagli

Cos è un algoritmo. Si dice algoritmo la descrizione di un metodo di soluzione di un problema che sia

Cos è un algoritmo. Si dice algoritmo la descrizione di un metodo di soluzione di un problema che sia Programmazione Un programma descrive al computer, in estremo dettaglio, la sequenza di passi necessari a svolgere un particolare compito L attività di progettare e realizzare un programma è detta programmazione

Dettagli

Indice generale Prefazione...xiii Capitolo 1 Introduzione...1 Capitolo 2 Sviluppo del software, tipi di dati ed espressioni...31

Indice generale Prefazione...xiii Capitolo 1 Introduzione...1 Capitolo 2 Sviluppo del software, tipi di dati ed espressioni...31 Indice generale Prefazione...xiii Capitolo 1 Introduzione...1 1.1 Due concetti fondamentali dell informatica: algoritmi ed elaborazione delle informazioni... 2 1.1.1 Algoritmi... 2 1.1.2 Elaborazione delle

Dettagli

Il calcolatore. Architettura di un calcolatore (Hardware)

Il calcolatore. Architettura di un calcolatore (Hardware) Il calcolatore Prima parlare della programmazione, e' bene fare una brevissima introduzione su come sono strutturati i calcolatori elettronici. I calcolatori elettronici sono stati progettati e costruiti

Dettagli

24 - Possibili approfondimenti

24 - Possibili approfondimenti 24 - Possibili approfondimenti 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

Dettagli

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1 Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1 Dispensa E03 Esempi di algoritmi e programmi A. Miola Settembre 2006 http://www.dia.uniroma3.it/~java/fondinf1/ Esempi di algoritmi e

Dettagli

INTRODUZIONE AL TESTO FILOSOFICO

INTRODUZIONE AL TESTO FILOSOFICO INTRODUZIONE AL TESTO FILOSOFICO MEDIANTE FORME DI ANNOTAZIONE SEMANTICA Ciclo seminariale 4 febbraio 2011 4 marzo 2011 Fra ontologie e mappe: un introduzione Francesco Bianchini DI COSA PARLEREMO Mappe

Dettagli

Corso di Fondamenti di Informatica e Laboratorio T-AB

Corso di Fondamenti di Informatica e Laboratorio T-AB Università degli Studi di Bologna Facoltà di Ingegneria Corso di Fondamenti di Informatica e Laboratorio T-AB Corso di Laurea in Ingegneria Elettronica e Telecomunicazioni e Ingegneria dell Automazione

Dettagli

TEORIE E TECNICHE PER LA COMUNICAZIONE DIGITALE

TEORIE E TECNICHE PER LA COMUNICAZIONE DIGITALE TEORIE E TECNICHE PER LA COMUNICAZIONE DIGITALE Riccardo Dondi Dipartimento di Scienze dei linguaggi, della comunicazione e degli studi culturali Università degli Studi di Bergamo Informazione sul corso

Dettagli

Fondamenti di Informatica e Laboratorio T-AB

Fondamenti di Informatica e Laboratorio T-AB Università degli Studi di Bologna Facoltà di Ingegneria Fondamenti di Informatica e Laboratorio T-AB Corso di Laurea in Ingegneria Elettronica e Telecomunicazioni Prof. Luca Foschini Prof. Alessio Bonfietti

Dettagli

Materiale didattico. Sommario

Materiale didattico. Sommario Diploma Universitario in Ingegneria Informatica Corso di Ingegneria del Software Docente: ing. Anna Rita Fasolino Dipartimento di Informatica e Sistemistica Università degli Studi di Napoli Federico II

Dettagli

Che cos e l Informatica

Che cos e l Informatica Che cos e l Informatica L Informatica (Computer Science) non è soltanto La scienza e la tecnologia dei calcolatori (che sono solo degli strumenti) L Informatica non coincide con nessuna delle applicazioni

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

Dipartimento di INFORMATICA TC - TTRG. Anno Scolastico Piano di Lavoro Disciplinare. INFORMATICA Articolazione: INFORMATICA Classe IV

Dipartimento di INFORMATICA TC - TTRG. Anno Scolastico Piano di Lavoro Disciplinare. INFORMATICA Articolazione: INFORMATICA Classe IV Dipartimento di INFORMATICA TC - TTRG Anno Scolastico 2015-2016 Piano di Lavoro Disciplinare INFORMATICA Articolazione: INFORMATICA Classe IV Docenti del Dipartimento: Maculotti Marina (IV A i ) Mazzucchelli

Dettagli

Algoritmi e loro proprietà. Che cos è un algoritmo? Un esempio di algoritmo

Algoritmi e loro proprietà. Che cos è un algoritmo? Un esempio di algoritmo 1 Cos è l informatica? L informatica è la scienza della rappresentazione e dell elaborazione dell informazione Algoritmi e loro proprietà Proprietà formali degli Algoritmi Efficienza rispetto al tempo

Dettagli

in termini informali: un algoritmo è una sequenza ordinata di operazioni che risolve un problema specifico

in termini informali: un algoritmo è una sequenza ordinata di operazioni che risolve un problema specifico Click to edit Algoritmo Master title style algoritmo: un insieme ordinato di operazioni non ambigue ed effettivamente computabili che, quando eseguito, produce un risultato e si arresta in un tempo finito

Dettagli

Problemi, algoritmi e oggetti

Problemi, algoritmi e oggetti Fondamenti di informatica Oggetti e Java Luca Cabibbo Capitolo 5 Marzo 2007 1 Fondamenti di informatica: Oggetti e Jav Contenuti... Problemi e algoritmi comprensione del problema identificazione di un

Dettagli

PROVVEDIMENTO DI URGENZA N. 11 IL PRESIDENTE DEL CONSIGLIO AGGREGATO DEI CORSI DI STUDIO IN INFORMATICA

PROVVEDIMENTO DI URGENZA N. 11 IL PRESIDENTE DEL CONSIGLIO AGGREGATO DEI CORSI DI STUDIO IN INFORMATICA Pisa, 3 ottobre 2013 PROVVEDIMENTO DI URGENZA N. 11 IL PRESIDENTE DEL CONSIGLIO AGGREGATO DEI CORSI DI STUDIO IN INFORMATICA Visto: lo Statuto dell Università di Pisa ed in particolare l art. 28.1 lettera

Dettagli

Architettura dei calcolatori e Software di sistema

Architettura dei calcolatori e Software di sistema Università degli Studi di Palermo Dipartimento di Ingegneria Chimica, Gestionale, Informatica, Meccanica Lezioni di Informatica di Base per la Facoltà di Lettere e Filosofia Anno Accademico 2012/20103

Dettagli

Rappresentazione con i diagrammi di flusso (Flow - chart)

Rappresentazione con i diagrammi di flusso (Flow - chart) Rappresentazione con i diagrammi di flusso (Flow - chart) Questo tipo di rappresentazione grafica degli algoritmi, sviluppato negli anni 50, utilizza una serie di simboli grafici dal contenuto evocativo

Dettagli

Linguaggi di Programmazione

Linguaggi di Programmazione Linguaggi di Programmazione Linguaggi di Programmazione Programmazione. Insieme delle attività e tecniche svolte per creare un programma (codice sorgente) da far eseguire ad un computer. Che lingua comprende

Dettagli

Programmazione. Cognome... Nome... Matricola... Prova scritta del 11 luglio 2014

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

Dettagli

Programmazione. Cognome... Nome... Matricola... Prova scritta del 22 settembre 2014. Negli esercizi proposti si utilizzano le seguenti classi:

Programmazione. Cognome... Nome... Matricola... Prova scritta del 22 settembre 2014. Negli esercizi proposti si utilizzano le seguenti classi: Cognome................................ Nome................................... Matricola............................... Programmazione Prova scritta del 22 settembre 2014 TEMPO DISPONIBILE: 2 ore Negli

Dettagli

Fondamenti di Programmazione. Strutture di controllo

Fondamenti 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

Dettagli

Fondamenti di Informatica. Algoritmi di Ricerca e di Ordinamento

Fondamenti di Informatica. Algoritmi di Ricerca e di Ordinamento Fondamenti di Informatica Algoritmi di Ricerca e di Ordinamento 1 Ricerca in una sequenza di elementi Data una sequenza di elementi, occorre verificare se un elemento fa parte della sequenza oppure l elemento

Dettagli

Università di Roma Tor Vergata L12-1

Università di Roma Tor Vergata L12-1 Università di Roma Tor Vergata L12-1 soluzione di un problema fl 1) definizione di una rappresentazione 2) specificazione di un algoritmo (dipendente dalla rappresentazione) 3) traduzione in un linguaggio

Dettagli

LA METAFORA DELL UFFICIO

LA METAFORA DELL UFFICIO LA METAFORA DELL UFFICIO Lavagna di lavoro Lavagna di programma Sportello utenti Impiegato Capo Ufficio LAVAGNA DI LAVORO Chiamiamo variabili le posizioni sulla lavagna, identificate ognuna da un nome

Dettagli

Liceo Scientifico " C. CATTANEO " PIANO DI LAVORO DI INFORMATICA. CLASSE 3 LSA SEZ. B e D

Liceo Scientifico  C. CATTANEO  PIANO DI LAVORO DI INFORMATICA. CLASSE 3 LSA SEZ. B e D Liceo Scientifico " C. CATTANEO " PIANO DI LAVORO DI INFORMATICA CLASSE 3 LSA SEZ. B e D Sommario PIANO DI LAVORO DI INFORMATICA... 1 INDICAZIONI GENERALI... 2 PREREQUISITI... 2 CONOSCENZE, COMPETENZE

Dettagli

FONDAMENTI DI INFORMATICA II

FONDAMENTI DI INFORMATICA II Università degli Studi di Ferrara Facoltà di Ingegneria APPUNTI DEL CORSO DI FONDAMENTI DI INFORMATICA II Obiettivi del corso: Approfondire l uso del linguaggio C rispetto a quanto noto dal corso di Fondamenti

Dettagli

Introduzione al Linguaggio C

Introduzione al Linguaggio C INFORMATICA 1 Lezione 3 (Introduzione al Linguaggio C, Introduzione ai Tipi di dato, Cenni alla codifica binaria) Introduzione al Linguaggio C 1 Passi fondamentali del C Definito nel 1972 (AT&T Bell Labs)

Dettagli

Introduzione a Java. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi132 Sesto San Giovanni

Introduzione a Java. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi132 Sesto San Giovanni Introduzione a Java IIS Altiero Spinelli Via Leopardi132 Sesto San Giovanni Linguaggi di programmazione Ogni programma viene scritto utilizzando un linguaggio specializzato, formale e comprensibile da

Dettagli

Architettura. Nome Modulo Tipologia lezioni Ore Docente SSD Ruolo Interno Affidamento. Vincenzo Conti

Architettura. Nome Modulo Tipologia lezioni Ore Docente SSD Ruolo Interno Affidamento. Vincenzo Conti Anno Accademico 2015 2016 A.A. Settore Scientifico Disciplinare CFU Insegnamento Ore di aula Mutuazione 2015/16 ING-INF/05 6 Algoritmi e Strutture Dati (a scelta) 48 No Classe Corso di studi Tipologia

Dettagli

RAPPRESENTAZIONE GLI ALGORITMI NOTAZIONE PER LA RAPPRESENTAZIONE DI UN ALGORITMO

RAPPRESENTAZIONE GLI ALGORITMI NOTAZIONE PER LA RAPPRESENTAZIONE DI UN ALGORITMO RAPPRESENTAZIONE GLI ALGORITMI NOTAZIONE PER LA RAPPRESENTAZIONE DI UN ALGORITMO Rappresentazione degli algoritmi Problema Algoritmo Algoritmo descritto con una qualche notazione Programma Defne del procedimento

Dettagli