Introduzione a Python per il calcolo scientifico

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Introduzione a Python per il calcolo scientifico"

Transcript

1 Introduzione a Python per il calcolo scientifico Ma ia Penati 23 gennaio 2014

2 Python Python è un linguaggio di programmazione dinamico orientato agli ogge i >>> import t h i s The Zen o f Python, by Tim P e t e r s B e a u t i f u l i s b e t t e r than ugly E x p l i c i t i s b e t t e r than i m p l i c i t Simple i s b e t t e r than complex Complex i s b e t t e r than c o m p l i c a t e d F l a t i s b e t t e r than n e s t e d S p a r s e i s b e t t e r than dense R e a d a b i l i t y counts

3 Algoritmo di Floyd-Warshall l e t d i s t be a V V a r r a y o f minimum d i s t a n c e s i n i t i a l i z e d to f o r each v e r t e x v d i s t [ v ] [ v ] 0 f o r each edge ( u, v ) d i s t [ u ] [ v ] w( u, v ) f o r k from 1 to V f o r i from 1 to V f o r j from 1 to V i f d i s t [ i ] [ k ] + d i s t [ k ] [ j ] < d i s t [ i ] [ j ] then d i s t [ i ] [ j ] d i s t [ i ] [ k ] + d i s t [ k ] [ j ]

4 Algoritmo di Floyd-Warshall def f l o y d _ w a r s h a l l ( V, E, weights ) : i n f = f l o a t ( I n f ) d i s t = [ [ i n f for u in V] for v in V] for i in range ( len ( V ) ) : d i s t [ i ] [ i ] = 0 for e, w in zip ( E, w ) : u, v = e d i s t [ u ] [ v ] = w for k in range ( len ( V ) ) : for i in range ( len ( V ) ) : for j in range ( len ( V ) ) : i f d i s t [ i ] [ k ] + d i s t [ k ] [ j ] < d i s t [ i ] [ j ] : d i s t [ i ] [ j ] = d i s t [ i ] [ k ] + d i s t [ k ] [ j ]

5 Python history 1991 Van Rossum rilascia i sorgenti della versione Viene rilasciata la versione Prima implementazione di numpy (Numeric) 2000 Viene rilasciata la versione Viene rilasciato SciPy Viene rilasciato NumPy Viene rilasciata la versione 30 Iniziano le conferenze SciPy e EuroSciPy

6 Python sfru a a pieno le potenzialità di un vero linguaggio di programmazione Python ha i namespaces è possibile sviluppare un intera applicazione con lo stesso linguaggio di programmazione, dall interfaccia alla logica, grazie al gran numero di librerie esistenti

7 Python sfru a a pieno le potenzialità di un vero linguaggio di programmazione Python ha i namespaces è possibile sviluppare un intera applicazione con lo stesso linguaggio di programmazione, dall interfaccia alla logica, grazie al gran numero di librerie esistenti MATLAB possiede un gran numero di funzioni testate e efficienti Simulink oltre ad essere utilizzato nelle università è utilizzato anche in ambito lavorativo

8 NumPy NumPy è il pacche o base per il calcolo scientifico con Python gestione degli array N-dimensionali integrazione con C, C++ e Fortran funzioni di base di algebra lineare

9 Gli array di Numpy Cos è un array per NumPy? typedef s t r u c t PyArrayObject { char * data ; i n t nd ; npy_intp * dimensions ; npy_intp * s t r i d e s ; PyArray_Descr * d e s c r ; } PyArrayObject ; Blocco di memoria contiene i dati in formato grezzo Schema di accesso traduce gli indici in un indirizzo di memoria Descri ore di tipo perme e di interpretare i dati

10 Gli array di Numpy >>> import numpy as np >>> A = np z e r o s ( ( 2, 2 ) ) >>> A a r r a y ( [ [ 0, 0 ], [ 0, 0 ] ] )

11 Gli array di Numpy >>> import numpy as np >>> A = np z e r o s ( ( 2, 2 ) ) >>> A a r r a y ( [ [ 0, 0 ], [ 0, 0 ] ] ) >>> B = A [ 0, : ] >>> B a r r a y ( [ 0, 0 ] )

12 Gli array di Numpy >>> import numpy as np >>> A = np z e r o s ( ( 2, 2 ) ) >>> A a r r a y ( [ [ 0, 0 ], [ 0, 0 ] ] ) >>> B = A [ 0, : ] >>> B a r r a y ( [ 0, 0 ] ) >>> B [ 0 ] = 1 >>> B a r r a y ( [ 1, 0 ] )

13 Gli array di Numpy >>> import numpy as np >>> A = np z e r o s ( ( 2, 2 ) ) >>> A a r r a y ( [ [ 0, 0 ], [ 0, 0 ] ] ) >>> B = A [ 0, : ] >>> B a r r a y ( [ 0, 0 ] ) >>> B [ 0 ] = 1 >>> B a r r a y ( [ 1, 0 ] ) >>> A a r r a y ( [ [ 1, 0 ], [ 0, 0 ] ] )

14 Differenze con MATLAB tu e le operazioni algebriche tra gli array di NumPy sono element-wise A * B A * B dot ( A, B ) A * B Python è zero-based A ( 1 : 5, : ) A ( end 4: end, : ) A ( 3 : 2 : 2 1, : ) A [ 0 : 5, : ] A [ 5 :, : ] A [ 2 : 2 1 : 2, : ] gli array di NumPy vengono passati per referenza e gli slice sono delle viste

15 SciPy SciPy è una collezione di algoritmi e funzioni basato su NumPy funzioni speciali (scipy special ) quadratura numerica e ODE (scipy integrate ) o imizzazione (scipy optimize) interpolazione (scipy interpolate ) trasformata di Fourier (scipy fftpack) elaborazione dei segnali (scipy signal) algebra lineare (scipy linalg ) statistica (scipy stats) I/O (scipy io)

16 SciPy Il pacche o scipy weave perme e di includere codice C e C++ dire amente nello script Python, rendendo molto semplice l o imizzazione di alcune parti di codice, senza dover scrivere un estensione

17 SciPy Il pacche o scipy weave perme e di includere codice C e C++ dire amente nello script Python, rendendo molto semplice l o imizzazione di alcune parti di codice, senza dover scrivere un estensione u [1: 1,1: 1] = ( ( u [0: 2,1: 1] + u [ 2 :, 1 : 1 ] ) * dy2 + ( u [1: 1,0: 2] + u [ 1 : 1, 2 : ] ) * dx2 ) * d n r _ i n v

18 SciPy Il pacche o scipy weave perme e di includere codice C e C++ dire amente nello script Python, rendendo molto semplice l o imizzazione di alcune parti di codice, senza dover scrivere un estensione u [1: 1,1: 1] = ( ( u [0: 2,1: 1] + u [ 2 :, 1 : 1 ] ) * dy2 + ( u [1: 1,0: 2] + u [ 1 : 1, 2 : ] ) * dx2 ) * d n r _ i n v expr = u [1: 1,1: 1] = ( ( u [0: 2,1: 1] + u [ 2 :, 1 : 1 ] ) * dy2 + \ ( u [1: 1,0: 2] + u [ 1 : 1, 2 : ] ) * dx2 ) * d n r _ i n v weave b l i t z ( expr, c h e c k _ s i z e = 0 )

19 SciPy Il pacche o scipy weave perme e di includere codice C e C++ dire amente nello script Python, rendendo molto semplice l o imizzazione di alcune parti di codice, senza dover scrivere un estensione u [1: 1,1: 1] = ( ( u [0: 2,1: 1] + u [ 2 :, 1 : 1 ] ) * dy2 + ( u [1: 1,0: 2] + u [ 1 : 1, 2 : ] ) * dx2 ) * d n r _ i n v expr = u [1: 1,1: 1] = ( ( u [0: 2,1: 1] + u [ 2 :, 1 : 1 ] ) * dy2 + \ ( u [1: 1,0: 2] + u [ 1 : 1, 2 : ] ) * dx2 ) * d n r _ i n v weave b l i t z ( expr, c h e c k _ s i z e = 0 ) La versione in Python viene eseguita in 10s, quella scri a con il paccheto Weave in 3s, invece la versione nativa scri a in C in 1s

20 Cython Cython è un compilatore per Python e Cython, perme e scrivere estensioni in C con la stessa facilità con cui si scrive in Python chiamare funzioni native in ogni punto del codice, aumentare le performance del codice introducendo la dichiarazione di tipo, integrare in modo semplice codice già esistente

21 Cython Cython è un compilatore per Python e Cython, perme e scrivere estensioni in C con la stessa facilità con cui si scrive in Python chiamare funzioni native in ogni punto del codice, aumentare le performance del codice introducendo la dichiarazione di tipo, integrare in modo semplice codice già esistente import numpy as np def n a i v e _ c o n v o l v e ( f, g ) :

22 Cython Cython è un compilatore per Python e Cython, perme e scrivere estensioni in C con la stessa facilità con cui si scrive in Python chiamare funzioni native in ogni punto del codice, aumentare le performance del codice introducendo la dichiarazione di tipo, integrare in modo semplice codice già esistente import numpy as np def n a i v e _ c o n v o l v e ( f, g ) : import numpy as np cimport numpy as np def n a i v e _ c o n v o l v e ( np ndarray f, np ndarray g ) :

23 Matplotlib Matplotlib è una libreria per la creazione di grafici 2D e 3D

24 perme e di includere grafici nelle applicazioni (wx, Qt, GTK) creazione di script per il postprocessing automatico dei dati importa dati da una grande varietà di fonti, anche Excel esporta in qualsiasi formato grafico ve oriale o raster anch esso è basato su NumPy

25 >>> import numpy as np >>> import m a t p l o t l i b p y p l o t as p l t >>> x = np l i n s p a c e ( 0, 2 * np pi, ) >>> y = np s i n ( x ) >>> p l t p l o t ( x, y ) [ < m a t p l o t l i b l i n e s Line2D object at 0 x10744c150 >] >>> p l t show ( )

26 alche libreria avanzata VTK È una libreria open-source per la grafica 3D, elaborazione di immagini e visualizzazione Sandia è tra i principali sviluppatori del proge o Trilinos È un proge o che raccoglie diverse librerie utilizzate per lo sviluppo di risolutori per problemi ingegneristici e scientifici PETSc È una suite di stru ure dati e algoritmi per lo sviluppo di applicazioni scientifiche Dal proge o PETSc sono nati i proge i: mpi4py, petsc4py, slepc4py, tao4py

27 FEniCS FEniCS è un proge o che ha l obie ivo di sviluppare strumenti innovativi per la risoluzione dei problemi differenziali con il metodo degli elementi finiti

28 FEniCS FEniCS è un proge o che ha l obie ivo di sviluppare strumenti innovativi per la risoluzione dei problemi differenziali con il metodo degli elementi finiti u v dx = fv dx v V Ω u = T r i a l F u n c t i o n ( V ) v = T e s t F u n c t i o n ( V ) } {{ } a(u,v) Ω }{{} L(v) a = dot ( grad ( u ), L = f * v * dx grad ( v ) ) * dx

29 FEniCS L obie ivo è creare strumenti che automatizzino parte dello sviluppo di un codice a elementi finiti: y n: generazione automatica delle funzioni di base valutazione automatica delle forme variazionali assemblaggio automatico delle stru ure controllo automatico dell ada ività di griglia =f tr (v) I (rv) > ) ) = u(x)

30 Enthought Python Distribution La distribuzione EPD è un ambiente autocontenuto che contiene al suo interno tu i gli strumenti necessari per lo sviluppo di applicazioni tecniche in Python è multipia aforma (Linux/MacOSX/Windows) per l utilizzo accademico è completamente gratuito contiene al suo interno più di 100 librerie (NumPy, SciPy, ) sponsorizzano il proge o SciPy

31 Anaconda Come EPD è un ambiente autocontenuto per lo sviluppo di applicazione per il calcolo scientifico in Python è multipia aforma (Linux/MacOSX/Windows) per l utilizzo accademico è completamente gratuito contiene al suo interno più di 100 librerie (NumPy, SciPy, ) perme e di switchare rapidamente tra diverse versioni dell interprete include o imizzazioni multi-core e GPU

32 Installazione in ambienti Unix Il modo più intelligente di installare queste librerie in un ambiente Unix è utilizzare virtualenv e a s y _ i n s t a l l pip pip i n s t a l l v i r t u a l e n v pip i n s t a l l v i r t u a l e n v w r a p p e r Configurate l ambiente con lo script virtualenvwrapper sh m k v i r t u a l e n v s c i p y pip i n s t a l l numpy pip i n s t a l l s c i p y pip i n s t a l l m a t p l o t l i b pip i n s t a l l ipython

Introduzione ai Laboratori di Fondamenti di Analisi dei Dati. Antonino Furnari

Introduzione ai Laboratori di Fondamenti di Analisi dei Dati. Antonino Furnari Introduzione ai Laboratori di Fondamenti di Analisi dei Dati Antonino Furnari furnari@dmi.unict.it www.dmi.unict.it/~furnari/ Laboratori di FAD Docente: Antonino Furnari (www.dmi.unict.it/~furnari/); Ricevimento:

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

Strumenti per l automazione del testing di applicazioni web Javascript-based

Strumenti per l automazione del testing di applicazioni web Javascript-based tesi di laurea Strumenti per l automazione del testing di applicazioni web Javascript-based Anno Accademico 2005/2006 relatore Ch.mo prof. Porfirio Tramontana 1 candidato Salvatore Agnello Matr. 41/2612

Dettagli

Introduzione a SciPy

Introduzione a SciPy Introduzione a SciPy Mario Rosati CINECA Roma m.rosati@cineca.it Introduzione Il#pacche)o#SciPy#con0ene#diversi# toolbox #dedica0#ai#problemi#più# comuni#del#calcolo#scien0fico## I#suoi#diversi#so)o>moduli#corrispondono#a#diverse#applicazioni,#come#

Dettagli

NumPy. Programmazione Orientata agli Oggetti e Scripting in Python

NumPy. Programmazione Orientata agli Oggetti e Scripting in Python NumPy Programmazione Orientata agli Oggetti e Scripting in Python NumPy: Informazioni di Base Estensione che aggiunge supporto per vettori e matrici multidimensionali Fornisce: funzioni matematiche di

Dettagli

Informatica 3. LEZIONE 1: Introduzione. Modulo 1: Introduzione al corso Modulo 2: Introduzione ai linguaggi di programmazione

Informatica 3. LEZIONE 1: Introduzione. Modulo 1: Introduzione al corso Modulo 2: Introduzione ai linguaggi di programmazione Informatica 3 LEZIONE 1: Introduzione Modulo 1: Introduzione al corso Modulo 2: Introduzione ai linguaggi di Informatica 3 Lezione 1- Modulo 1 Introduzione al corso Introduzione Corso di Informatica 3

Dettagli

TCL PAD: UN EDITOR DI TESTO ESTENDIBILE, INCORPORABILE E CON INTERFACCE DI TEXT-PROCESSING

TCL PAD: UN EDITOR DI TESTO ESTENDIBILE, INCORPORABILE E CON INTERFACCE DI TEXT-PROCESSING Tesi di Laurea Triennale in Ingegneria Informatica TCL PAD: UN EDITOR DI TESTO ESTENDIBILE, INCORPORABILE E CON INTERFACCE DI TEXT-PROCESSING Relatore: Prof. SERGIO FLESCA Laureando: ANTONIO BONIFATI MATR.

Dettagli

Laboratorio Apprendimento Automatico

Laboratorio Apprendimento Automatico Laboratorio Apprendimento Automatico Laurea Magistrale in Informatica Mirko Polato 14 novembre 2016 Python Perché python? Molti moduli per l analisi e la visualizzazione dei dati pre esistenti; Facile

Dettagli

Informatica 3. Informatica 3. Lezione 1- Modulo 1. LEZIONE 1: Introduzione. Concetti di linguaggi di programmazione. Introduzione

Informatica 3. Informatica 3. Lezione 1- Modulo 1. LEZIONE 1: Introduzione. Concetti di linguaggi di programmazione. Introduzione Informatica 3 Informatica 3 LEZIONE 1: Introduzione Lezione 1- Modulo 1 Modulo 1: Introduzione al corso Modulo 2: Introduzione ai linguaggi di Introduzione al corso Politecnico di Milano - Prof. Sara Comai

Dettagli

Laboratorio di Informatica

Laboratorio di Informatica Laboratorio di Informatica Lorenzo Mucchi Ingegneria Elettronica e delle Telecomunicazioni Informazioni sul corso Laboratorio di Informatica è un corso di 27 ore che fornisce un'introduzione all'ambiente

Dettagli

Python. Loriano Storchi.

Python. Loriano Storchi. Python Loriano Storchi loriano@storchi.org http:://www.storchi.org/ I linguaggi di programmazione Abbiamo visto che i linguaggi di programmaione sono: Dichiarativi Logici Funzionali Imperativi Procedurali

Dettagli

SciPy. Programmazione Orientata agli Oggetti e Scripting in Python

SciPy. Programmazione Orientata agli Oggetti e Scripting in Python SciPy Programmazione Orientata agli Oggetti e Scripting in Python SciPy: Informazioni di Base Libreria di algoritmi e strumenti matematici Fornisce: moduli per l'ottimizzazione, per l'algebra lineare,

Dettagli

Le novità di QGIS 3 Cosa cambierà nel più utilizzato software GIS Open Source. Valerio Noti - TerreLogiche srl

Le novità di QGIS 3 Cosa cambierà nel più utilizzato software GIS Open Source. Valerio Noti - TerreLogiche srl Le novità di QGIS 3 Cosa cambierà nel più utilizzato software GIS Open Source Valerio Noti - TerreLogiche srl, ROMA 18 OTTOBRE 2017 QGIS QGIS è uno dei principali software GIS attualmente disponibili e

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

Introduzione a Java A. FERRARI

Introduzione a Java A. FERRARI Introduzione a Java A. FERRARI La nascita di Java 1991 - James Gosling lavora al Green Project (SUN) per studiare la convergenza tra dispositivi di elettronica di consumo e computer 1992 il Green Project

Dettagli

interfacing C/C++/FORTRAN

interfacing C/C++/FORTRAN interfacing C/C++/FORTRAN Simone Campagna 1 pimp your python code/1 Python è un linguaggio relativamente lento, se confrontato con C/C++/FORTRAN. Questo deriva dal fatto che è di alto livello, con tipizzazione

Dettagli

Il linguaggio di programmazione Python

Il linguaggio di programmazione Python Università Roma Tre Dipartimento di Matematica e Fisica Percorso Abilitante Speciale Classe A048 Matematica Applicata Corso di Informatica Il linguaggio di programmazione Python Marco Liverani (liverani@mat.uniroma3.it)

Dettagli

Architetture Applicative Altri Esempi

Architetture Applicative Altri Esempi Architetture Applicative Altri Esempi Alessandro Martinelli alessandro.martinelli@unipv.it 15 Aprile 2014 Architetture Applicative Altri Esempi di Architetture Applicative Architetture con più Applicazioni

Dettagli

Interfaccia utente Al momento dell apertura del software viene visualizzata la finestra dei comandi principali.

Interfaccia utente Al momento dell apertura del software viene visualizzata la finestra dei comandi principali. MATLAB Presentazione MATLAB, che sta per MATrixLABoratory, è un software ad alta prestazione utile nella trattazione tecnica di problemi di analisi numerica, ingegneristici, per il calcolo scientifico.

Dettagli

Linguaggi di programmazione e astrazione

Linguaggi di programmazione e astrazione Linguaggi di programmazione e astrazione i linguaggi di programmazione ad alto livello moderni sono il più potente strumento di astrazione messo a disposizione dei programmatori che possono, con un solo

Dettagli

PROGRAMMA = ALGORITMO

PROGRAMMA = ALGORITMO Corso di Laurea Scienze Prof. San. Tec., Area Tecnico-Assistenziale SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI Anno Accademico 2005-2006 Prof. Fausto Passariello Corso Integrato Metodologia della Ricerca

Dettagli

Python Start. Docente: M. Chiara Debernardi. Lingua del corso. Descrizione del corso e obiettivi. Destinatari. Italiano

Python Start. Docente: M. Chiara Debernardi. Lingua del corso. Descrizione del corso e obiettivi. Destinatari. Italiano Python Start Docente: M. Chiara Debernardi Lingua del corso Italiano Descrizione del corso e obiettivi Il corso mira a far conoscere i fondamenti di Python i cui ambiti di utilizzo sono molteplici: intelligenza

Dettagli

CORSO DI PROGRAMMAZIONE ios BASE IN LINGUAGGIO NATIVO OBJECTIVE-C

CORSO DI PROGRAMMAZIONE ios BASE IN LINGUAGGIO NATIVO OBJECTIVE-C CORSO DI PROGRAMMAZIONE ios BASE IN LINGUAGGIO NATIVO OBJECTIVE-C Apple ha stupito tutta la sua comunità di sviluppatori quando ha annunciato Swift, un nuovo linguaggio di programmazione per applicazioni

Dettagli

Linguaggi di Programmazione

Linguaggi di Programmazione Linguaggi di Programmazione!paradigmi linguistici, costrutti!semantica!implementazione, strutture a tempo di esecuzione 1 Linguaggi di programmazione e astrazione! i linguaggi di programmazione ad alto

Dettagli

ESERCITAZIONE 1 CORSO DI FONDAMENTI DI INFORMATICA PROF. GABRIELE DI STEFANO - DR. FRANCESCO GALLO

ESERCITAZIONE 1 CORSO DI FONDAMENTI DI INFORMATICA PROF. GABRIELE DI STEFANO - DR. FRANCESCO GALLO DIPARTIMENTO DI INGEGNERIA E SCIENZE DELL INFORMAZIONE E MATEMATICA - UNIVAQ CORSO DI FONDAMENTI DI INFORMATICA ESERCITAZIONE 1 PROF. GABRIELE DI STEFANO - DR. FRANCESCO GALLO Blocco 0 - III Piano - francesco.gallo@univaq.it

Dettagli

Informatica ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE. Francesco Tura. F. Tura

Informatica ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE. Francesco Tura. F. Tura Informatica ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE Francesco Tura francesco.tura@unibo.it 1 Lo strumento dell informatico: ELABORATORE ELETTRONICO [= calcolatore = computer] Macchina multifunzionale Macchina

Dettagli

U4Learn.

U4Learn. U4Learn www.u4learn.it U4Learn 1 SPINOFF - UNIPA E-learning cloud-based U4Learn: Nuove Prospettive per la Formazione Ambiti Formativi SCOLASTICO ACCADEMICO PROFESSIONALE U4Learn: Nuove Prospettive per

Dettagli

Indice. Prefazione. 3 Oggetti e Java 53

Indice. Prefazione. 3 Oggetti e Java 53 Prefazione xv 1 Architettura dei calcolatori 1 1.1 Calcolatori e applicazioni 1 1.1.1 Alcuni esempi di applicazioni 3 1.1.2 Applicazioni e interfacce 4 1.2 Architettura dei calcolatori 7 1.2.1 Hardware

Dettagli

A. Ferrari. informatica. introduzione a Java. Alberto Ferrari Informatica

A. Ferrari. informatica. introduzione a Java. Alberto Ferrari Informatica informatica introduzione a Java La nascita di Java 1991 - James Gosling lavora al Green Project (SUN) per studiare la convergenza tra dispositivi di elettronica di consumo e computer 1992 il Green Project

Dettagli

Introduzione al Calcolo Scientifico

Introduzione al Calcolo Scientifico Introduzione al Calcolo Scientifico Corso di Analisi Numerica, a.a. 2006/2007 Francesca Mazzia Dipartimento di Matematica Università di Bari 16 Ottobre 2006 Francesca Mazzia (Univ. Bari) Introduzione al

Dettagli

Programmazione Orientata agli Oggetti in Linguaggio Java

Programmazione Orientata agli Oggetti in Linguaggio Java Programmazione Orientata agli Oggetti in Linguaggio Java Strumenti di Sviluppo: Introduzione versione 1.0 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima

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

Laboratorio di Programmazione Lezione 1 Introduzione al corso

Laboratorio di Programmazione Lezione 1 Introduzione al corso Laboratorio di Programmazione Lezione 1 al corso Prof. Michele Scarpiniti Prof. Danilo Comminiello Dipartimento di Ingegneria dell Informazione, Elettronica e Telecomunicazioni Sapienza Università di Roma

Dettagli

Una Libreria di Algebra Lineare per il Calcolo Scientifico

Una Libreria di Algebra Lineare per il Calcolo Scientifico Una Libreria di Algebra Lineare per il Calcolo Scientifico Introduzione Il Lavoro di Tesi Introduzione al Metodo Ridurre l Occupazione di Memoria Metodo di Memorizzazione degli Elementi Risultati Attesi

Dettagli

FREEFEM++ Marcello Bellomi. 18 Aprile Università di Verona FREEFEM++

FREEFEM++ Marcello Bellomi. 18 Aprile Università di Verona FREEFEM++ 18 Aprile 2013 Indice 1) Introduzione 2) Esempio base 3) Sintassi 4) Esempio Part I Indroduzione Dettagli iniziali Risolve problemi in 2D e 3D, creato principalmente per risolvere problemi variazionali

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

Problema: dati i voti di tutti gli studenti di una classe determinare il voto medio della classe.

Problema: dati i voti di tutti gli studenti di una classe determinare il voto medio della classe. Problema: dati i voti di tutti gli studenti di una classe determinare il voto medio della classe. 1) Comprendere il problema 2) Stabilire quali sono le azioni da eseguire per risolverlo 3) Stabilire la

Dettagli

Modelli di programmazione parallela

Modelli di programmazione parallela Modelli di programmazione parallela Oggi sono comunemente utilizzati diversi modelli di programmazione parallela: Shared Memory Multi Thread Message Passing Data Parallel Tali modelli non sono specifici

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

Indice Prefazione XIII Capitolo 1 Introduzione al Visual Basic per Excel

Indice Prefazione XIII Capitolo 1 Introduzione al Visual Basic per Excel Indice Prefazione XIII Capitolo 1 Introduzione al Visual Basic per Excel 1 1.1 Premessa 1 1.2 Lavorare in Ambiente Excel 2 1.3 Le Macro di Excel 4 Dal Linguaggio Macro al Visual Basic for Application 4

Dettagli

Evoluzione del FORTRAN 14/03/2016. LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 15 IL LINGUAGGIO FORTRAN

Evoluzione del FORTRAN 14/03/2016. LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 15 IL LINGUAGGIO FORTRAN LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 15 IL LINGUAGGIO FORTRAN Marco Lapegna Dipartimento di Matematica e Applicazioni Universita degli Studi di Napoli Federico II wpage.unina.it/lapegna

Dettagli

LAUREA TRIENNALE IN INFORMATICA - DM 270/04

LAUREA TRIENNALE IN INFORMATICA - DM 270/04 LAUREA TRIENNALE IN INFORMATICA - DM 270/04 SC01123195 ALGEBRA E GEOMETRIA 10:00 MAT/02, MAT/03 2010 SC02100080 ALGORITMI E STRUTTURE DATI 08:00 INF/01 2009 SC02100179 ANALISI MATEMATICA 10:00 MAT/05,

Dettagli

Introduzione alla programmazione strutturata

Introduzione alla programmazione strutturata FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Prof. ELIO TOPPANO Facoltà di Ingegneria Università degli Studi di Udine Introduzione alla programmazione strutturata 2001 Pier Luca Montessoro, Elio

Dettagli

MATLAB - Introduzione. Antonino Polimeno

MATLAB - Introduzione. Antonino Polimeno MATLAB - Introduzione Antonino Polimeno antonino.polimeno@unipd.it MATLAB - 1 Da Wikipedia MATLAB (abbreviazione di Matrix Laboratory) è un ambiente per il calcolo numerico e l'analisi statistica scritto

Dettagli

La formalizzazione dell informazione: Dati e Diagrammi di Flusso

La formalizzazione dell informazione: Dati e Diagrammi di Flusso La formalizzazione dell informazione: Dati e Diagrammi di Flusso Codifica degli algoritmi Algoritmo formulato per essere comunicato tra esseri umani chiaro, sintetico e intuitivo codificato in linguaggi

Dettagli

TEORIE E TECNICHE DEL RICONOSCIMENTO

TEORIE E TECNICHE DEL RICONOSCIMENTO TEORIE E TECNICHE DEL RICONOSCIMENTO INTRODUZIONE A SCIKIT-LEARN CLASSIFICAZIONE REGRESSIONE ALTRE LIBRERIE PER L APPRENDIMENTO AUTOMATICO IN PYTHON Come abbiamo visto, la libreria NLTK permeie di apprendere

Dettagli

Strutture dati nel supporto a run time

Strutture dati nel supporto a run time Strutture dati nel supporto a run time 1 Entità presenti quando un programma va in esecuzione programmi d utente (compilati) routines del supporto interprete I/O, librerie, routines per la gestione delle

Dettagli

Corso di Fondamenti di Informatica e Laboratorio

Corso di Fondamenti di Informatica e Laboratorio Corso di Fondamenti di Informatica e Laboratorio Corsi di Laurea Ingegneria Informatica (O-Z) Corsi di Laurea Ingegneria delle Telecomunicazioni - (A-Z) (ordinamento 03) A.A. 2009-2010 Prof. Giuseppe Mangioni

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

PREFAZIONE... IX Lo scopo di questo libro... ix La metodologia di insegnamento... ix Panoramica sul libro... xiii

PREFAZIONE... IX Lo scopo di questo libro... ix La metodologia di insegnamento... ix Panoramica sul libro... xiii Sommario PREFAZIONE... IX Lo scopo di questo libro... ix La metodologia di insegnamento... ix Panoramica sul libro... xiii CAPITOLO 1: INTRODUZIONE AI COMPUTER, A INTERNET E AL WEB... 1 1.1 Introduzione...

Dettagli

STUDIO E IMPLEMENTAZIONE DI UN SISTEMA DI PARCHEGGIO ASSISTITO

STUDIO E IMPLEMENTAZIONE DI UN SISTEMA DI PARCHEGGIO ASSISTITO UNIVERSITÀ DEL SALENTO FACOLTÀ DI INGEGNERIA Corso di Laurea Magistrale in Ingegneria Meccanica TESI DI LAUREA in MECCANICA DEL VEICOLO STUDIO E IMPLEMENTAZIONE DI UN SISTEMA DI PARCHEGGIO ASSISTITO Relatore:

Dettagli

Algoritmo. La programmazione. Algoritmo. Programmare. Procedimento di risoluzione di un problema

Algoritmo. La programmazione. Algoritmo. Programmare. Procedimento di risoluzione di un problema Algoritmo 2 Procedimento di risoluzione di un problema La programmazione Ver. 2.4 Permette di ottenere un risultato eseguendo una sequenza finita di operazioni elementari Esempi: Una ricetta di cucina

Dettagli

MapServer. Marco Negretti

MapServer. Marco Negretti MapServer Marco Negretti Politecnico di Milano Polo Regionale di Como e-mail: marco.negretti@polimi.it http://geomatica.como.polimi.it - tel +39.031.332.7524 17/05/05 - v 1.0 proprietà MapServer è un ambiente

Dettagli

Programmazione Procedurale in Linguaggio C++

Programmazione Procedurale in Linguaggio C++ Programmazione Procedurale in Linguaggio C++ Elementi di Base Parte 1 Introduzione G. Mecca M. Samela Università della Basilicata Elementi di Base >> Sommario Sommario Linguaggi di Programmazione Sintassi

Dettagli

Introduzione a Matlab

Introduzione a Matlab INFORMATICA B Ingegneria Elettrica Introduzione a Matlab Introduzione a Matlab Matlab (MATrix LABoratory) è uno strumento per il calcolo scientifico ed ingegneristico Matlab facilita lo sviluppo di programmi

Dettagli

Il computer. Il case e l'unità di elaborazione. Il computer, una macchina aggiornabile.

Il computer. Il case e l'unità di elaborazione. Il computer, una macchina aggiornabile. Liceo Scientifico Vinci PROGRAMMA FINALE A.S. 2016/2017 Materia: INFORMATICA Classe 1Q Prof. Dardanelli Francesco PROGRAMMA SVOLTO NELL ANNO SCOLASTICO IL COMPUTER. Hardware e software. Il computer. Il

Dettagli

Programmazione. Andrea Passerini Informatica. Programmazione

Programmazione. Andrea Passerini Informatica. Programmazione Andrea Passerini passerini@disi.unitn.it Informatica Linguaggi di programmazione Il calcolatore è in grado di comprendere solo istruzioni in linguaggio macchina. Il linguaggio macchina non è adatto alla

Dettagli

Concetti Introduttivi

Concetti Introduttivi Concetti Introduttivi Linguaggi di Programmazione http://www.dia.uniroma3.it/~roselli/ roselli@dia.uniroma3.it Credits Materiale a cura del Prof. Franco Milicchio Linguaggi di Programmazione Impartiscono

Dettagli

INSEGNAMENTI DEI GRUPPI PER IL CURRICULUM TEORICO La loro attivazione è definita per ogni anno accademico in sede di programmazione didattica

INSEGNAMENTI DEI GRUPPI PER IL CURRICULUM TEORICO La loro attivazione è definita per ogni anno accademico in sede di programmazione didattica INSEGNAMENTI DEI GRUPPI PER IL CURRICULUM TEORICO La loro attivazione è definita per ogni anno accademico in sede di programmazione didattica Gruppo IstAppl: Istituzioni applicative Istituzioni di analisi

Dettagli

Introduzione alla programmazione con Java

Introduzione alla programmazione con Java Introduzione alla programmazione con Java Docente: Lucio Benussi Lingua del corso Italiano Descrizione del corso e obiettivi Il corso affronta lo studio di Java, linguaggio open source orientato agli oggetti

Dettagli

Appalto concorso sistema GAWS

Appalto concorso sistema GAWS Appalto concorso sistema GAWS Data: 29 ottobre 2007 Autore: Fabio Faieta Azienda Proponente: srl Appalto concorso per la realizzazione di un modello software per la automatica di un componente di comunicazione

Dettagli

LabView Parte 1 IL LABVIEW LEZ_1. Corso di. Misure per la Automazione e la Qualità (Studenti Ingegneria Elettrica III anno Nuovo Ordinamento )

LabView Parte 1 IL LABVIEW LEZ_1. Corso di. Misure per la Automazione e la Qualità (Studenti Ingegneria Elettrica III anno Nuovo Ordinamento ) Corso di Misure per la Automazione e la Qualità (Studenti Ingegneria Elettrica III anno Nuovo Ordinamento ) IL LABVIEW LEZ_1 Luigi Ferrigno ferrigno@unicas.it Gruppo Misure Elettriche ed Elettroniche Facoltà

Dettagli

Corso di Fondamenti di Informatica Linguaggi di Programmazione

Corso di Fondamenti di Informatica Linguaggi di Programmazione Corso di Informatica Linguaggi di Programmazione Anno Accademico 2011/2012 Francesco Tortorella Linguaggi di programmazione Un calcolatore basato sul modello di von Neumann permette l esecuzione di un

Dettagli

Università di Pisa Facoltà di Scienze Matematiche Fisiche e Naturali

Università di Pisa Facoltà di Scienze Matematiche Fisiche e Naturali Facoltà di Scienze Matematiche Fisiche e Naturali Corso di Laurea Specialistica in Informatica (classe 23/S: Informatica) Corso di Laurea Specialistica in Tecnologie Informatiche (classe 23/S: Informatica)

Dettagli

Introduzione a Simulink

Introduzione a Simulink Ing. Roberto Naldi DEIS-Università di Bologna Tel. 051 2093876 (CASY) Email: roberto.naldi@unibo.it URL: www-lar.deis.unibo.it/~rnaldi 1 Cosa è Simulink Simulink: un ambiente grafico per la simulazione

Dettagli

Java: un linguaggio per applicazioni di rete

Java: un linguaggio per applicazioni di rete Java: un linguaggio per applicazioni di rete Moreno Falaschi Dipartimento di Ingegneria dell Informazione e Scienze Matematiche Università di Siena March 3, 2014 1 Caratteristiche di Java (SUN) Linguaggio

Dettagli

CORSO TRASVERSALE. SummeR School-DATA MINING AND DATA ANALYSIS WITH R

CORSO TRASVERSALE. SummeR School-DATA MINING AND DATA ANALYSIS WITH R CORSO TRASVERSALE SummeR School-DATA MINING AND DATA ANALYSIS WITH R PROPONENTE Prof.ssa Luisa Bernardinelli, Prof. Mario Grassi e Dott. Davide Gentilini OBIETTIVI FORMATIVI La gestione e l analisi dei

Dettagli

Programma Master Programmatore Java

Programma Master Programmatore Java Programma Master Programmatore Java PCAcademy Via Capodistria 12 Tel.: 06.97.84.22.16 06.85.34.44.76 Cell. 393.93.64.122 - Fax: 06.91.65.92.92 www.pcacademy.it info@pcacademy.it Informazioni generali La

Dettagli

Evoluzione del C 07/04/2016. LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 16 IL LINGUAGGIO C

Evoluzione del C 07/04/2016. LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 16 IL LINGUAGGIO C LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 16 IL LINGUAGGIO C Marco Lapegna Dipartimento di Matematica e Applicazioni Universita degli Studi di Napoli Federico II wpage.unina.it/lapegna

Dettagli

Indice generale Introduzione...vii Parte I Concetti e costrutti fondamentali... 1 Capitolo 1 Introduzione al linguaggio... 3

Indice generale Introduzione...vii Parte I Concetti e costrutti fondamentali... 1 Capitolo 1 Introduzione al linguaggio... 3 Introduzione...vii Organizzazione del libro... viii Struttura del libro e convenzioni... ix Codice sorgente e progetti... x Compilare ed eseguire direttamente i listati e gli snippet di codice... x Compilare

Dettagli

Iniziare a programmare in C++

Iniziare a programmare in C++ Iniziare a programmare in C++ Docente: Ing. Edoardo Fusella Dipartimento di Ingegneria Elettrica e Tecnologie dell Informazione Via Claudio 21, 4 piano laboratorio SECLAB Università degli Studi di Napoli

Dettagli

v.krige - coupling GRASS GIS and R for spatial interpolation

v.krige - coupling GRASS GIS and R for spatial interpolation v.krige - coupling GRASS GIS and R for spatial interpolation 10.02.2011 Superficie statistica Dai punti alla superficie Grandezza presente su tutta l area (temperatura, quota... ), campionamento puntiforme

Dettagli

Introduzione a Matlab e Simulink

Introduzione a Matlab e Simulink Introduzione a Matlab e Simulink Fondamenti di Automatica 1 Motivazioni: problema di analisi Modello del sistema dinamico parametri Segnali d eccitazione Prestazioni? del sistema Come analizzare il comportamento,

Dettagli

MapServer. Marco Negretti. Politecnico di Milano Polo Regionale di Como

MapServer. Marco Negretti. Politecnico di Milano Polo Regionale di Como MapServer Marco Negretti Politecnico di Milano Polo Regionale di Como e-mail: marco.negretti@polimi.it http://geomatica.como.polimi.it 08/02/06 - v 1.2 proprietà MapServer è un ambiente di sviluppo open

Dettagli

Il pitone mangianumeri Breve descrizione di alcune delle caratteristiche che rendono Python adatto al calcolo scientifico

Il pitone mangianumeri Breve descrizione di alcune delle caratteristiche che rendono Python adatto al calcolo scientifico Il pitone mangianumeri Breve descrizione di alcune delle caratteristiche che rendono Python adatto al calcolo scientifico Samuele Carli 8 settembre 2008 Samuele Carli (Prato Linux User Group) Python number

Dettagli

Sommario FONDAMENTI DI INFORMATICA. Definizione formale di algoritmo. Informatica e algoritmi. ALGORITMI E LINGUAGGIO PYTHON Introduzione

Sommario FONDAMENTI DI INFORMATICA. Definizione formale di algoritmo. Informatica e algoritmi. ALGORITMI E LINGUAGGIO PYTHON Introduzione Università degli Studi di Cagliari Corsi di Laurea in Ingegneria Chimica e Ingegneria Meccanica FONDAMENTI DI INFORMATICA http://www.diee.unica.it/~marcialis/fi A.A. 2017/2018 Sommario Algoritmi, linguaggi

Dettagli

REPERTORIO DELLE QUALIFICAZIONI PROFESSIONALI DELLA REGIONE CAMPANIA

REPERTORIO DELLE QUALIFICAZIONI PROFESSIONALI DELLA REGIONE CAMPANIA REPERTORIO DELLE QUALIFICAZIONI PROFESSIONALI DELLA REGIONE CAMPANIA QUALIFICAZIONE PROFESSIONALE Denominazione qualificazione Analista programmatore 5 Settore Economico Professionale Area di Attività

Dettagli

Introduzione alla programmazione con Java

Introduzione alla programmazione con Java Introduzione alla programmazione con Java Docente: Lucio Benussi Lingua Italiano Descrizione e obiettivi Il corso affronta lo studio di Java, linguaggio open source orientato agli oggetti tra i più diffusi

Dettagli

Introduzione all uso di FICO Xpress. Metodi di Ottimizzazione per la Logistica e la Produzione

Introduzione all uso di FICO Xpress. Metodi di Ottimizzazione per la Logistica e la Produzione Introduzione all uso di FICO Xpress Metodi di Ottimizzazione per la Logistica e la Produzione 1 2 Alcuni risolutori per la Programmazione Matematica Indice Sono a disposizione numerosi risolutori di Programmazione

Dettagli

CENNI MINIMI DI PROGRAMMAZIONE FUNZIONALE IN PYTHON - V. 0.3

CENNI MINIMI DI PROGRAMMAZIONE FUNZIONALE IN PYTHON - V. 0.3 CENNI MINIMI DI PROGRAMMAZIONE FUNZIONALE IN PYTHON - V. 0.3 MATTEO PRADELLA 1. Introduzione e concetti base La programmazione funzionale è uno stile di programmzione che enfatizza la valutazione di espressioni,

Dettagli

Scrivere il software. Scrivere il software. Interprete. Compilatore e linker. Fondamenti di Informatica

Scrivere il software. Scrivere il software. Interprete. Compilatore e linker. Fondamenti di Informatica FODAMETI DI IFORMATICA Prof. PIER LUCA MOTESSORO Prof. ELIO TOPPAO Facoltà di Ingegneria Università degli Studi di Udine Introduzione alla programmazione strutturata 2001 Pier Luca Montessoro, Elio Toppano

Dettagli

3. Programmi e algoritmi

3. Programmi e algoritmi 3. Programmi e algoritmi Andrea Marongiu (andrea.marongiu@unimore.it) Paolo Valente Contiene slides del corso «Fondamenti di Informatica» del Prof. Montessoro (Università degli Studi di Udine) Recall:

Dettagli

SCHEMA DI COLLOCAZIONE delle monografie disposte a scaffale aperto

SCHEMA DI COLLOCAZIONE delle monografie disposte a scaffale aperto SCHEMA DI COLLOCAZIONE delle monografie disposte a scaffale aperto 00 OPERE DI CARATTERE GENERALE 00A Matematiche generali 00B Atti di convegni internazionali - Proceedings di interesse generale 00C Dizionari

Dettagli

Introduzione al Corso

Introduzione al Corso Introduzione al Nicu Sebe Informatica Nicu Sebe 1 / 12 Informazioni Scopo Contatti Nicu Sebe (niculae.sebe@unitn.it) Per informazioni/ricevimento, email http://www.disi.unitn.it/ sebe/info Materiale per

Dettagli

Pag. 1. La formalizzazione dell informazione: Dati e Diagrammi di Flusso. Codifica degli algoritmi

Pag. 1. La formalizzazione dell informazione: Dati e Diagrammi di Flusso. Codifica degli algoritmi 1 Università degli studi di Parma Dipartimento di Ingegneria dell Informazione Informatica a.a. 2012/13 Informatica Facoltà di Medicina Veterinaria a.a. 2012/13 prof. Stefano Cagnoni La formalizzazione

Dettagli

Plotting: matplotlib & pyplot

Plotting: matplotlib & pyplot Plotting: matplotlib & pyplot Programmazione Orientata agli Oggetti e Scripting in Python Matplotlib: summary Matplotlib: libreria per la gestione di grafici 2d Matplotlib: summary Matplotlib: libreria

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

Linguaggi di Programmazione

Linguaggi di Programmazione Linguaggi di Programmazione 1 C-Introduzione.tex: Versione 1.0, aa 2005-2006 Linguaggi di programmazione (1) Sono linguaggi che permettono la codifica di algoritmi in modo da renderli eseguibili, direttamente

Dettagli

Introduzione al MATLAB c Parte 1 Variabili ed array

Introduzione al MATLAB c Parte 1 Variabili ed array Introduzione al MATLAB c Parte 1 Variabili ed array Lucia Gastaldi DICATAM - Sezione di Matematica, http://lucia-gastaldi.unibs.it Indice 1 Cos è il MATLAB Componenti principali di MATLAB Avvio e Strumenti

Dettagli

Traduzione e interpretazione

Traduzione e interpretazione Traduzione e interpretazione Parte dei lucidi sono stati gentilmente forniti dal Prof. Salza VII.1 Linguaggi di programmazione Linguaggi ad alto livello Maggiore espressività Maggiore produttività Migliore

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

Ambienti di Sviluppo. Linguaggi compilati

Ambienti di Sviluppo. Linguaggi compilati Insieme omogeneo di strumenti adatti allo sviluppo di progetti software. Compilatori e/o interpreti; Editor; Ambienti di Sviluppo Strumenti di debug e/o test; 1 Linguaggi compilati Codice sorgente convertito

Dettagli

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica Fondamenti di Informatica INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA Fondamenti di Informatica - D. Talia - UNICAL 1 Fondamenti di Informatica - Programma Un programma è una formulazione

Dettagli

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Fondamenti di Informatica - Programma

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Fondamenti di Informatica - Programma Fondamenti di Informatica INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA Fondamenti di Informatica - D. Talia - UNICAL 1 Fondamenti di Informatica - Programma Un programma è una formulazione

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

MATERIALI PER LA DISCUSSIONE

MATERIALI PER LA DISCUSSIONE SETTORE TECNOLOGICO MATERIALI PER LA DISCUSSIONE ISTITUTO TECNICO INDIRIZZO ARTICOLAZIONE TELECOMUNICAZIONI INFORMATICA E TELECOMUNICAZIONI ESITI DI APPRENDIMENTO Regolamento, Art. 5 comma 1 Nota: Le Competenze,

Dettagli

Struttura di un. Struttura dei programmi C

Struttura di un. Struttura dei programmi C Parte 4 Struttura di un Programma Struttura dei programmi C Un programma C deve essere contenuto in uno o più file (salvo diversa specifica, per ora si assume in un file): 1. Una parte contenente direttive

Dettagli

Model-Based-Design in F1

Model-Based-Design in F1 Model-Based-Design in F1 Team-development e generazione codice in ambienti con un breve time-to-market Riccardo Lodini Indice Ferrari GES Scuderia La storia dell elettronica in F1 Principali controlli

Dettagli