C++

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "http://root.cern.ch C++"

Transcript

1 ROO C++ Èun com prog dedi Piano di lavoro ROOT é un framework per l analisi dati basato sul C++: E` un sistema estremamente flessibile, ma un po complesso da imparare, Introduzione alla progra che consente di scrivere un programma sfruttando una intera Il framework di analisi R infrastruttura dedicata all analisi Applicazioni all analisi d + piccolissima introduzione/ricapitolazione sulla programmazione + introduzione al framework di root + esempi

2 La linea di comando Riassunto Architettura di un PC '()*+,-./,01(, B,671*/, &586* Programma:!"# $%& 23'4 "5()*-167/8915:1-6*;<=1(1 Il ciclo di istruzioni Leggere dati da input o l ciclo di memoria istruzioni Eseguire una operazione + Leggere Scrivere dati da risultato input in o memoria o + Eseguire su output una operazione + Scrivere L esecuzione risultato in passa memoria poi o su output all istruzione successiva... + Lʼesecuzione passa poi allʼistruzione successiva... Serie di istruzioni che vengono eseguite in sequenza dalla CPU M. Floris Introduzione alla programmazione Programma: Serie di istruzioni che vengono eseguite in sequenza dalla CPU

3 La linea di comando Riassunto linguaggio di programmazione Cosa è un linguaggio di programmazione? Un Un linguaggio di di programmazione permette di scriveredei dei comandi per per il il computer in inglese. Queste vengono tradotte in istruzioni per la CPU Queste da un vengono programma tradotte chiamato in istruzioni compilatore pero della interprete. CPU da un programma chiamato compilatore o interprete. Conta fino a 10! Interprete tradotto riga per riga durante l esecuzione Interprete Compilatore tradotto tradotto riga per nell insieme riga durante etrasformato lʼesecuzione in codice eseguibile Compilatore tradotto nellʼinsieme e trasformato in codice eseguibile Il C ed il C++ sono linguaggi compilati Il C ed il C++ sono linguaggi compilati... in genere!

4 Riassunto Vantaggi di compilatori ed interpreti Compilatori Esecuzione più veloce Errori nel codice vengono trovati prima che inizi l esecuzione La compilazione richiede tempo (es. vedere effetti di una piccola modifica) Poco portabile Medio-grande complessità e fase di produzione Interpreti Vedere subito cosa fa il programma Facilmente utilizzabile su sistemi operativi diversi Programma pù lento Un errore banale alla fine del codice potrebbe essere scoperto solo dopo alcune ore di esecuzione... Programmi molto semplici o in fase di sviluppo/prototipazione M. Floris Introduzione alla programmazione

5 Riassunto Il C ed il C++: Hello World Il C rinomato per la sua efficienza, e si imposto come linguaggio di riferimento per la realizzazione di software di sistema su gran parte delle piattaforme hardware moderne. Il C++ un linguaggio di programmazione orientato agli oggetti [... ]. stato sviluppato [...] nel 1983 come un miglioramento del linguaggio C (Wikipedia) Ogni corso di programmazione che si rispetti, inizia con il programma Hello World : #i n c l u d e <stdio.h> int main( int argc, char argv []) { printf ( Hello World\n ); return 0; M. Floris Introduzione alla programmazione

6 Le funzioni La linea di comando Riassunto Sintassi: Punteggiatura Sintassi Un linguaggio di programmazione segue delle Sintassi regole grammaticali rigide (sintassi) Un linguaggio di programmazione segue delle regole grammaticali rigide (sintassi) #i n c l u d e <stdio.h> int main( int argc, char argv []) { printf ( Hello World\n ); return 0; Diversi blocchi di codice sono racchiusi tra {... Le righe di istruzioni devono terminare con ; M. Floris Introduzione alla programmazione

7 Le funzioni Cosa significa programmare Introduzione al C/C++ Le funzioni La linea di comando Riassunto Il codice pu`o essere diviso in vari blocchi logici (funzioni), che raccolgono comandi coerenti tra loro. Il codice può essere diviso in vari blocchi logici (funzioni), che raccolgono comandi coerenti tra loro. #i n c l u d e <stdio.h> int main( int argc, char argv []) { printf ( Hello World\n ); return 0; printf è una funzione Se dovete riscrivere lo stesso codice piuʼ volte, conviene ragrupparlo in una funzione TIP: Se dovete riscrivere lo stesso codice piu volte, conviene ragrupparlo in una funzione Il compilatore mette a disposizione un gran numero di funzioni per svolgere alcuni compiti comuni (libreria standard). M. Floris Introduzione alla programmazione printf eʼ una funzione della libreria standard utile per scrivere del testo sullo schermo.

8 svolgere alcuni compiti comuni (libreria standard). printf è una funzione della libreria standard utile per scrivere del testo sullo schermo. ROOT fornice delle librerie supplementari con funzioni (e oggetti) di uso comune nell analisi dei dati! #i n c l u d e <stdio.h> int main( int argc, char argv []) { printf ( Hello World\n ); return 0; per usare una funzione di libreria è necessario includere la sua definizione printf è una funzione di libreria M. Floris Introduzione alla programmazione

9 ROOT fornice delle librerie supplementari con funzioni (e oggetti) di uso comune nellʼanalisi dei dati

10 La funzione Main La linea di comando Riassunto Ogni programma in C++ deve avere una funzione principale (main), che viene eseguita quanto parte il programma Ogni programma in C++ deve avere una funzione principale (main), che viene eseguita quanto parte il programma! Le funzioni possono restituire dei valori Le funzioni possono restituire dei valori! Ad esempio, la funzione Ad esempio, Quardrato(x) la funzione potrebbe Quardrato(x) restituire x potrebbe x. restituire x x. I valori I valori delle delle funzioni funzioni devono devono avereun un tipo, che chedefiniscedichevaloresi di si tratta tratta (es. (es. numero intero, intero, numero decimale, testo testo....). ) #i n c l u d e <stdio.h> int main( int argc, char argv []) { printf ( Hello World\n ); return 0; M. Floris Introduzione alla programmazione tipo di dato restituito da main main è il punto di ingresso al programma

11 Esempio di Utilizzo di una funzione Un esempio completo: #i n c l u d e <stdio.h> int Quadrato( int x); int main( int argc, char argv []) { int n = 3; int xquadro = Quadrato(n); printf ( Quadrato di %d: %d\n, n, xquadro); return 0; int Quadrato( int x) { return x x; M. Floris Introduzione alla programmazione

12 Esempio di Utilizzo di una funzione Un esempio completo: #i n c l u d e <stdio.h> int Quadrato( int x); Dichiarazione della funzione int main( int argc, char argv []) { int n = 3; Dichiarazione variabile x int xquadro = Quadrato(n); Uso quadrato e assegnazione printf ( Quadrato di %d: %d\n, n, xquadro); return 0; int Quadrato( int x) { return x x; M. Floris Introduzione alla programmazione I %d vengono sostituiti con i valori di x ed xquadro!

13 linea di comando Sia che si usi Linux, sia che si usi Windows eʼ utile saper usare la linea di comando Modo per dare istruzioni al PC alternativo a point-and-click con il mouse Piu` flessibile in molte circostanze: provate a cancellare con il mouse tutti i files che cominciano con pi e finiscono con ppo! Riga di comando del pi*ppo Indispensabile per usare ROOT!

14 le variabili Le Variabili Scelte Cicli Riassunto Variabili : celle di memoria dove vengono conservati i valori nei vostri Variabili : programmi. celle di memoria dove vengono conservati i valori nei vostri programmi. Come Come le funzioni, le funzioni, le le variabili devono essere dichiarate: dichiarate: Con la dichiarazione viene riservata Conuna la dichiarazione cella memoria viene riservata per la una variabile cella di memoria Con lʼassegnazione per la variabile viene inserito il valore Con nella l assegnazione cella viene inserito il valore nella cella Cella riservata con definizione Tipo di variabile (intero) int var ; Nome della variabile Il punto e virgola! Si deve assegnare un valore alla variabile:... var = 10; Variabile inizializzata: int var = 10;; M. Floris Variabili ed Operatori Variabile inizializzata: int var = 10;

15 ItipidiVariabili Le Variabili Scelte Cicli Riassunto Esistono diversi tipi di variabili, a seconda del dato che deve essere conservato: Tipi int float double void char bool Numero intero Numero a virgola mobile Numero a virgola mobile (doppia precisione) Nessun valore (utile nella definizione di funzioni) Singolo carattere Vero/Falso float e double rappresentano lo stesso tipo di numero. double occupa più memoria ma è più preciso (consente più cifre significative) void è utile per definire funzioni che non restituiscono valori Per definire stringhe (sequenze di caratteri) sono necessari i puntatori, che vedremo tra qualche lezione. M. Floris Variabili ed Operatori

16 Le scelte le scelte Esempi che abbiamo visto finora: istruzioni eseguite in sequenza. Esempi che abbiamo visto finora: istruzioni eseguite in sequenza. Utile avere Utile anche avere dei anche modi dei per modi modificare per modificare il flusso il del flusso programma, del programma, ad esempio ad esempio per per fare fare delle delle scelte. scelte. prendi l ombrello Si piove? Alt, se c è vento prendi la giacca Altrimenti prendi gli occhiali da sole M. Floris Variabili ed Operatori

17 if - else Le Variabili Scelte Cicli Riassunto In C il costrutto principale utilizzato per fare delle scelte `e: if-[else if]-[else] if - else (else if e else sono opzionali) In C il costrutto principale utilizzato per fare delle scelte è: if-[else if]-[else] (else if e else sono opzionali) int main( int argc, char argv []) { bool rain, wind ; rain = true ; wind = false ; if (rain == true) { PrendiOmbrello (); else if (wind == true) { PrendiGiacca (); else { PrendiOcchialiSole (); Blocchi racchiusi tra { return 0; M. Floris Variabili ed Operatori

18 And, Or, Not Le Variabili Scelte Cicli Riassunto r e Tabelle di verità sono usare combinazioni logiche, con gli operatori: (&&) e or ( ) e not (!) Si possono usare combinazioni logiche, con gli operatori: and (&&) e or ( ) e not (!) and or = falso 1 = vero Esempio: if (a && b (!c) ) {... C++ 0 corrisponde a falso, qualsiasi valore = 0 corrisponde a

19 li Operatori 4 operazioni + - * / Incremento (es. i ++) ++ Decremento (es. i ) Uguale == Diverso!= Maggiore > Maggiore o uguale >= Minore < Minore o uguale <= O logico E logico && Negazione Logica! Parentesi () M. Floris Variabili ed Operatori

20 Icicli I cicli Cicli Riassunto Esistono anche dei costrutti che permettono di eseguire azioni ripetitive: i cicli. Esistono anche dei costrutti che permettono di eseguire azioni ripetitive: icicli. Notare i ; valore iniziale condizione per continuare for( int i = 0; i < 10 ; i ++){ printf ( %d\n, i ); azione da eseguire ad ogni ciclo i può essere dichiarata al volo ma non è definita fuori da qui i non è definita fuori dal blocco di codice delimitato dalle graffe: queste parentesi definiscono lo scope della variabile i non eʼ definita fuori dal blocco di codice delimitato dalle graffe: queste parentesi definiscono lo scope della variabile M. Floris Variabili ed Operatori

21 Array Array Array Puntatori Riassunto Gli array sono insiemi di n variabili dello stesso tipo. Questo esempio crea un array con 10 elementi. Gli array sono insiemi di n variabili dello stesso tipo. Questo esempio crea un array con 10 elementi. nome della variabile tipo dimensione dell array int ar r [1 0] ; La dimensione è tra [ ] I valori dei singoli elementi vengono impostati in questo modo: arr [0] = 10; arr [1] = 3;... arr [9] = 4; Il primo elemento è 0 L ultimo elemento n-1! M. Floris Array e Puntatori

22 Immaginate di voler raccogliere i voti di una classe di 10 studenti, e di voler calcolare il voto medio: voto medio = voto 1 + voto voto n n Senza gli array avreste bisogno di 10 variabili. Con l array: int voti [10] = { 5,6,10,7,8,6,4,3,6,7 ; float media = 0; for( int istud=0; istud <10; istud++){ media = media + voti [ istud ]; media = media / 10; Dichiarazione, inizializazione array. Notare le { Ciclo for per la somma M. Floris Array e Puntatori

23 Gli Oggetti Gli Oggetti ROOT Riassunto Definizione: oggetti Un oggetto è un insieme di dati con le funzioni che servono per manipolare questi dati Divisione del programma in unita auto-consistenti Programmazione ad oggetti introduce un livello di astrazione più alto: programmazione più vicina all utente che alla macchina Esempio: nei nostri programmi ci potrebbe essere un oggetto telescopio che contiene tutte le informazioni sul telescopio (numero di piani, distanza, etc e che permette di visualizzare segnali lasciati da particelle). Noi non scriveremo oggetti, ma useremo numerosi oggetti definiti da ROOT M. Floris Oggetti e introduzione a ROOT

24 Terminologia Gli Oggetti ROOT Riassunto L uso degli oggetti in C++ è associato ad una terminologia: Classe: un nuovo tipo di dato che rappresenta la struttura di un oggetto (esempio la classe istogramma, la classe TH1F ). Molti oggetti possono appartenere alla stessa classe. Oggetto: unavariabilecheimplementaunacertaclasse(esempio l oggetto h1 appartiene alla classe TH1F; più propriamente: è un istanza di TH1F) Metodo: una funzione appartenente ad una classe Membro: unavariabileappartenenteadunaclasse N.B. A volte il termine oggetto viene anche utilizzato con il significato di classe M. Floris Oggetti e introduzione a ROOT

25 Come usare gli oggetti ROOT Riassunto Oggetti si usano come normali variabili: classi definiscono nuovi tipi. Spesso si usano puntatori per riferirsi agli oggetti. Supponiamo di aver definito la classe TMacchina: due membri per il colore e la velocità e due metodi per impostare valori // Crea un oggetto normalmente TMacchina macchina1 ( rossa ); // Per usare un metodo, serve un. macchina1.setspeed(10); // Crea una macchina come puntatore TMacchina macchina2 = new TMacchina( blu ); // Per usare un metodo s i usa una > macchina2 >SetSpeed (100); Notare il. ela-> new nome classe serve quando si usa un puntatore M. Floris Oggetti e introduzione a ROOT Inizializzazione valori classe

26 ROOT Riassunto Esempio: L oggetto istogramma Questo esempio usa l oggetto TH1F di ROOT, che rapresenta un istogramma. Il grafico rappresenta il numero di studenti per lezione (ad esempio ci sono stati tra 6 e 9 studenti per 3 lezioni... ) M. Floris Oggetti e introduzione a ROOT

27 Riassunto Esempio istogramma: codice // Dichiarazione del l istogramma TH1F h = new TH1F( hstud, Studenti per lezione, 10, 0, 30); h > Fill (5); // Ci sono s t a t i 3 studenti h > Fill (10); // Ci sono s t a t i 10 studenti... h > Fill (25); // Serve un f i l l per ogni lezione h >Draw ( ) ; // viene disegnato l istogramma M. Floris Oggetti e introduzione a ROOT

28 Lʼinterprete di ROOT L interprete di ROOT Gli Oggetti ROOT Riassunto ROOT ROOT fornisce un insieme di classi per l analisi dati e CINT, uninterprete di C++. Come aprire l interprete: 1 start ->...-> Visual C++ ->...-> Visual Studio Command Prompt Questo apre una linea di comando, consapevole dell esistenza di Visual C++ nel sistema aprire un terminale digitare root 2 Digitare root Provare a dichiarare due variabili float, assegnare un valore a ciascuna e farne la somma con l interprete. M. Floris Oggetti e introduzione a ROOT

29 La Macro Tipo di ROOT I programmi scritti per ROOT vengono normalmente chiamati Macro. Piccole differenze rispetto ad un programma: la funzione main è sostituita da una funzione principale che deve avere lo stesso nome del file di codice File: Macro.cpp // include l i b r e r i e #include <stdio.h> // dichiarazione funzioni float Quadrato( float x); // Funzione Principale ( s i chiama come i l f i l e ) void Macro () { float xquadro = Quadrato (4); printf ( Quadrato di 3: %d\n, n, xquadro); return 0; // implementazione delle a l t r e funzioni float Quadrato( float x) { return x x;

30 Eseguire una Macro Usando le Macro non è più necessario compilare usando l editor di Visual C++, si può usare direttamente CINT. CINT/ROOT C/C++ I n t e r p r e t e r v e r s i o n , Jan 08,2008 Type? for help. Commands must be C++ statements. Enclose multiple statements between {. root [0].L Macro.C+ [...] root [1] Macro() Ciao root [2].x Macro.C+ Ciao.x carica la macro ed esegue la funzione principale al volo.l carica la macro le funzioni definite nella macro sono disponibili in CINT Senza il + alla fine del nome della macro, la macro viene interpretata. Consiglio: compilare quasi sempre. Provare a fare una macro che scriva Hello World M. Floris Oggetti e introduzione a ROOT

31 primo esempio - uso root 1) apri terminale 2) esegui root 3) crea l istogramma: root[] TH1F *hist_1 = new TH1F("hist_1", "Il mio primo histo", 100, 2, 200); 4) riempi l istogramma root[] hist_1.fill(50); root[] hist_1.fill(120,2); root[] hist_1.fill(130,2); 5) disegna l istogramma root[] hist_1.draw();

32

33 una macro root { TH2F *hpxpy = new TH2F("hpxpy","py vs px",40,-4,4,40,-4,4); TH1F *hpx = new TH1F("hpx","px",40,-4,4); TH1F *hpy = new TH1F("hpy","py",40,-4,4); Double_t px,py; for (Int_t i = 0; i < 50000; i++) { grandom->rannor(px,py); hpxpy->fill(px,py); hpx->fill(px); hpy->fill(py); hpxpy->draw("col"); 1) apri terminale 2) edita la macro 3) esegui la macro

34 una macro root { TH2F *hpxpy = new TH2F("hpxpy","py vs px",40,-4,4,40,-4,4); TH1F *hpx = new TH1F("hpx","px",40,-4,4); TH1F *hpy = new TH1F("hpy","py",40,-4,4); Double_t px,py; for (Int_t i = 0; i < 50000; i++) { grandom->rannor(px,py); hpxpy->fill(px,py); hpx->fill(px); hpy->fill(py); hpxpy->draw("col"); 1) apri terminale 2) edita la macro 3) esegui la macro

35 esempio di un fit gaussiano { TH2F *hpxpy = new TH2F("hpxpy","py vs px",40,-4,4,40,-4,4); TH1F *hpx = new TH1F("hpx","px",40,-4,4); TH1F *hpy = new TH1F("hpy","py",40,-4,4); Double_t px,py; for (Int_t i = 0; i < 50000; i++) { grandom->rannor(px,py); hpxpy->fill(px,py); hpx->fill(px); hpy->fill(py); hpxpy->draw("col"); 1) apri terminale 2) edita la macro 3) esegui la macro 4) hpx->draw() 5) esegui un fit gaussiano tramite l interfaccia fit panel

36 un poʼ piuʼ complesso 1) scaricate: 2) scaricate: 3) eseguite basic2.c

37 un poʼ piuʼ complesso void basic2() { // example of macro to create can ntuple reading data from an ascii file. // This macro is a variant of basic.c //Author: Rene Brun TString dir = gsystem->unixpathname(ginterpreter->getcurrentmacroname()); dir.replaceall("basic2.c",""); dir.replaceall("/./","/"); TFile *f = new TFile("basic2.root","RECREATE"); TH1F *h1 = new TH1F("h1","x distribution",100,-4,4); TTree *T = new TTree("ntuple","data from ascii file"); Long64_t nlines = T->ReadFile(Form("%sbasic.dat",dir.Data()),"x:y:z"); printf(" found %lld points\n",nlines); T->Draw("y","z>2"); T->Write();

38 fit con funzione esterna Double_t fitf(double_t *v, Double_t *par) { Double_t arg = 0; arg = (v[0]/par[2] + par[1]); Double_t fitval = par[3]+par[0]*1/((tmath::sin(arg))*(tmath::sin(arg))*(tmath::sin(arg))*(tmath::sin(arg))); return fitval; void myfit() { float ang[9]={0,5,10,15; float cont[9]={3353,1543,96,6; float errx[9]={2,2,2,2; float erry[9]={100,100,10,5; TGraphErrors *gr3 = new TGraphErrors(4,ang,cont,errx,erry); TF1 *func = new TF1("fit",fitf,0,25,4); func->setparameters(35,10,5,10); func->setparnames("par0","par1","par2","par3"); gr3->setmarkerstyle(21); gr3->draw("ap"); gr3->fit("fit");

39 fit con funzione esterna

Introduzione a ROOT. 1. Informazioni generali

Introduzione a ROOT. 1. Informazioni generali Introduzione a ROOT 1. Informazioni generali ROOT è un ambiente visualizzazione e trattamento dati interattivo sviluppato al CERN (si veda il sito ufficiale http://root.cern.ch interamente sviluppato in

Dettagli

Codifica: dal diagramma a blocchi al linguaggio C++

Codifica: dal diagramma a blocchi al linguaggio C++ Codifica: dal diagramma a blocchi al linguaggio C++ E necessario chiarire inizialmente alcuni concetti. La compilazione Il dispositivo del computer addetto all esecuzione dei programmi è la CPU La CPU

Dettagli

LINGUAGGI DI PROGRAMMAZIONE

LINGUAGGI DI PROGRAMMAZIONE LINGUAGGI DI PROGRAMMAZIONE Il potere espressivo di un linguaggio è caratterizzato da: quali tipi di dati consente di rappresentare (direttamente o tramite definizione dell utente) quali istruzioni di

Dettagli

Linguaggio C. Fondamenti. Struttura di un programma.

Linguaggio C. Fondamenti. Struttura di un programma. Linguaggio C Fondamenti. Struttura di un programma. 1 La storia del Linguaggio C La nascita del linguaggio C fu dovuta all esigenza di disporre di un Linguaggio ad alto livello adatto alla realizzazione

Dettagli

Funzioni in C. Violetta Lonati

Funzioni in C. Violetta Lonati Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica Funzioni - in breve: Funzioni Definizione di funzioni

Dettagli

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

Per scrivere una procedura che non deve restituire nessun valore e deve solo contenere le informazioni per le modalità delle porte e controlli CODICE Le fonti in cui si possono trovare tutorial o esempi di progetti utilizzati con Arduino si trovano nel sito ufficiale di Arduino, oppure nei forum di domotica e robotica. Il codice utilizzato per

Dettagli

La selezione binaria

La selezione binaria Andrea Marin Università Ca Foscari Venezia Laurea in Informatica Corso di Programmazione part-time a.a. 2011/2012 Introduzione L esecuzione di tutte le istruzioni in sequenza può non è sufficiente per

Dettagli

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

3 - Variabili. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo 3 - Variabili Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it Corso di

Dettagli

Corso di Informatica (Programmazione) Lezione 6 (31 ottobre 2008)

Corso di Informatica (Programmazione) Lezione 6 (31 ottobre 2008) Corso di Informatica (Programmazione) Lezione 6 (31 ottobre 2008) Introduzione a Java: primo programma, installazione dell ambiente di sviluppo, compilazione ed esecuzione 1 Introduzione Java è un linguaggio

Dettagli

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

Dall Algoritmo al Programma. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni Dall Algoritmo al Programma Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni IL PROGRAMMA Gli algoritmi sono modelli di descrizione astratti e per controllarne il funzionamento devono essere

Dettagli

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

SOFTWARE. È l insieme delle istruzioni che è necessario fornire alla macchina per il suo funzionamento. Vi sono due categorie di software: 1 SOFTWARE È l insieme delle istruzioni che è necessario fornire alla macchina per il suo funzionamento. Vi sono due categorie di software: SOFTWARE DI SISTEMA (o di base), che deve gestire le funzioni

Dettagli

Laboratorio di Informatica

Laboratorio di Informatica Laboratorio di Informatica Introduzione a Python Dottore Paolo Parisen Toldin - parisent@cs.unibo.it Argomenti trattati Che cosa è python Variabili Assegnazione Condizionale Iterazione in una lista di

Dettagli

Programmare in Java. Olga Scotti

Programmare in Java. Olga Scotti Programmare in Java Olga Scotti Linguaggi di programmazione linguaggio macchina assembler linguaggi ad alto livello Linguaggi ad alto livello istruzioni comprensibili linguaggio simile a quello naturale

Dettagli

Strutture. Strutture e Unioni. Definizione di strutture (2) Definizione di strutture (1)

Strutture. Strutture e Unioni. Definizione di strutture (2) Definizione di strutture (1) Strutture Strutture e Unioni DD cap.10 pp.379-391, 405-406 KP cap. 9 pp.361-379 Strutture Collezioni di variabili correlate (aggregati) sotto un unico nome Possono contenere variabili con diversi nomi

Dettagli

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

Gli array. Gli array. Gli array. Classi di memorizzazione per array. Inizializzazione esplicita degli array. Array e puntatori Gli array Array e puntatori Laboratorio di Informatica I un array è un insieme di elementi (valori) avente le seguenti caratteristiche: - un array è ordinato: agli elementi dell array è assegnato un ordine

Dettagli

Introduzione alla programmazione in C

Introduzione alla programmazione in C Introduzione alla programmazione in C Testi Consigliati: A. Kelley & I. Pohl C didattica e programmazione B.W. Kernighan & D. M. Ritchie Linguaggio C P. Tosoratti Introduzione all informatica Materiale

Dettagli

Gian Luca Marcialis studio degli algoritmi programma linguaggi LINGUAGGIO C

Gian Luca Marcialis studio degli algoritmi programma linguaggi LINGUAGGIO C Università degli Studi di Cagliari Corso di Laurea in Ingegneria Biomedica (Industriale), Chimica, Elettrica, e Meccanica FONDAMENTI DI INFORMATICA 1 http://www.diee.unica.it/~marcialis/fi1 A.A. 2010/2011

Dettagli

Arduino: Programmazione

Arduino: Programmazione Programmazione formalmente ispirata al linguaggio C da cui deriva. I programmi in ARDUINO sono chiamati Sketch. Un programma è una serie di istruzioni che vengono lette dall alto verso il basso e convertite

Dettagli

Introduzione a Dev-C++

Introduzione a Dev-C++ Introduzione a Dev-C++ Università degli Studi di Brescia Docente: Massimiliano Giacomin Elementi di Informatica e Programmazione Università di Brescia 1 Note: Dev-C++ richiede Windows 95/98/NT/2000/XP

Dettagli

Programmazione C Massimo Callisto De Donato massimo.callisto@unicam.it www.cs.unicam.it/massimo.callisto

Programmazione C Massimo Callisto De Donato massimo.callisto@unicam.it www.cs.unicam.it/massimo.callisto 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

Introduzione al MATLAB c Parte 2

Introduzione al MATLAB c Parte 2 Introduzione al MATLAB c Parte 2 Lucia Gastaldi Dipartimento di Matematica, http://dm.ing.unibs.it/gastaldi/ 18 gennaio 2008 Outline 1 M-file di tipo Script e Function Script Function 2 Costrutti di programmazione

Dettagli

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

Nascita di Java. Che cos e Java? Caratteristiche di Java. Java: linguaggio a oggetti Nascita di Java L uscita di Java, verso la metà degli anni novanta, fu accolta con molto entusiasmo dalla comunità dei programmatori e dei provider di servizi internet perché permetteva agli utenti del

Dettagli

Excel. A cura di Luigi Labonia. e-mail: luigi.lab@libero.it

Excel. A cura di Luigi Labonia. e-mail: luigi.lab@libero.it Excel A cura di Luigi Labonia e-mail: luigi.lab@libero.it Introduzione Un foglio elettronico è un applicazione comunemente usata per bilanci, previsioni ed altri compiti tipici del campo amministrativo

Dettagli

Automatizzare i compiti ripetitivi. I file batch. File batch (1) File batch (2) Visualizzazione (2) Visualizzazione

Automatizzare i compiti ripetitivi. I file batch. File batch (1) File batch (2) Visualizzazione (2) Visualizzazione Automatizzare i compiti ripetitivi I file batch Anno accademico 2000-01 1 Spesso capita di dover eseguire ripetutatmente una data sequenza di comandi Introdurli uno a uno da tastiera è un processo lento

Dettagli

Introduzione a Visual Basic Lezione 1 Concetti base e istruzioni condizionali

Introduzione a Visual Basic Lezione 1 Concetti base e istruzioni condizionali a Visual Basic Lezione 1 Concetti base e istruzioni condizionali Mario Alviano Introduzione all informatica Università della Calabria http://alviano.net/introinfo A.A. 2008/09 Introduzione Un esempio:

Dettagli

Informa(ca Appun% dal laboratorio 2

Informa(ca Appun% dal laboratorio 2 Informa(ca Appun% dal laboratorio 2 Conce- fondamentali Esistono programmi, come Microso8 Word oppure Acrobat Reader, che vengono usa% dagli uten% per far eseguire al computer determinate operazioni (come

Dettagli

4 3 4 = 4 x 10 2 + 3 x 10 1 + 4 x 10 0 aaa 10 2 10 1 10 0

4 3 4 = 4 x 10 2 + 3 x 10 1 + 4 x 10 0 aaa 10 2 10 1 10 0 Rappresentazione dei numeri I numeri che siamo abituati ad utilizzare sono espressi utilizzando il sistema di numerazione decimale, che si chiama così perché utilizza 0 cifre (0,,2,3,4,5,6,7,8,9). Si dice

Dettagli

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

Appunti del corso di Informatica 1 (IN110 Fondamenti) 6 Introduzione al linguaggio C Università di Roma Tre Facoltà di Scienze M.F.N. Corso di Laurea in Matematica Appunti del corso di Informatica 1 (IN110 Fondamenti) 6 Introduzione al linguaggio C Marco Liverani (liverani@mat.uniroma3.it)

Dettagli

Esercizi su. Funzioni

Esercizi su. Funzioni Esercizi su Funzioni ๒ Varie Tracce extra Sul sito del corso ๓ Esercizi funz_max.cc funz_fattoriale.cc ๔ Documentazione Il codice va documentato (commentato) Leggibilità Riduzione degli errori Manutenibilità

Dettagli

Richiesta pagina PHP (es: index.php)

Richiesta pagina PHP (es: index.php) PHP PHP = personal home page SERVER Richiesta pagina PHP (es: index.php) Server Web (Apache) in ascolto sulla porta 80, si accorge che la pagina richiesta è una pagina PHP in base all'estensione o con

Dettagli

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

Appunti del corso di Informatica 1. 6 Introduzione al linguaggio C Università di Roma Tre Dipartimento di Matematica e Fisica Corso di Laurea in Matematica Appunti del corso di Informatica 1 (IN110 Fondamenti) 6 Introduzione al linguaggio C Marco Liverani (liverani@mat.uniroma3.it)

Dettagli

Tipi primitivi. Ad esempio, il codice seguente dichiara una variabile di tipo intero, le assegna il valore 5 e stampa a schermo il suo contenuto:

Tipi primitivi. Ad esempio, il codice seguente dichiara una variabile di tipo intero, le assegna il valore 5 e stampa a schermo il suo contenuto: Tipi primitivi Il linguaggio Java offre alcuni tipi di dato primitivi Una variabile di tipo primitivo può essere utilizzata direttamente. Non è un riferimento e non ha senso tentare di istanziarla mediante

Dettagli

Programmazione in Java Parte I: Fondamenti

Programmazione in Java Parte I: Fondamenti Programmazione in Java Parte I: Fondamenti Lezione 1 Dott. Marco Faella Riferimenti Testi consigliati: Progettazione del software e design pattern in Java di C.S. Horstmann Apogeo Gli esempi di codice

Dettagli

www.filoweb.it STAMPA UNIONE DI WORD

www.filoweb.it STAMPA UNIONE DI WORD STAMPA UNIONE DI WORD Molte volte abbiamo bisogno di stampare più volte lo stesso documento cambiando solo alcuni dati. Potremmo farlo manualmente e perdere un sacco di tempo, oppure possiamo ricorrere

Dettagli

3) Il seguente numerale A1F0 in base 16 a quale numero in base 10 corrisponde?

3) Il seguente numerale A1F0 in base 16 a quale numero in base 10 corrisponde? Leggete attentamente le domande del test e date la/le vostra/e risposta/e. 1) Per quanto tempo la memoria RAM di un personal computer conserva le informazioni? Finchè lo hard disk funziona in modo corretto

Dettagli

Le variabili. Olga Scotti

Le variabili. Olga Scotti Le variabili Olga Scotti Cos è una variabile Le variabili, in un linguaggio di programmazione, sono dei contenitori. Possono essere riempiti con un valore che poi può essere riletto oppure sostituito.

Dettagli

2. Spiegare brevemente qual è la funzione del compilatore e la sua importanza per il programmatore.

2. Spiegare brevemente qual è la funzione del compilatore e la sua importanza per il programmatore. 1 Esercizio 1 1. Immaginate di avere una calcolatore che invece che poter rappresentare i classici due valori per ogni bit (0/1) possa rappresentare 7 valori per ogni bit. (a) Quanti bit gli occorreranno

Dettagli

IL SISTEMA OPERATIVO IL SISTEMA OPERATIVO INTERFACCE TESTUALI INTERFACCE TESTUALI FUNZIONI DEL SISTEMA OPERATIVO INTERFACCE GRAFICHE

IL SISTEMA OPERATIVO IL SISTEMA OPERATIVO INTERFACCE TESTUALI INTERFACCE TESTUALI FUNZIONI DEL SISTEMA OPERATIVO INTERFACCE GRAFICHE IL SISTEMA OPERATIVO Insieme di programmi che opera al di sopra della macchina fisica, mascherandone le caratteristiche e fornendo agli utenti funzionalità di alto livello. PROGRAMMI UTENTE INTERPRETE

Dettagli

Raggruppamenti Conti Movimenti

Raggruppamenti Conti Movimenti ESERCITAZIONE PIANO DEI CONTI Vogliamo creare un programma che ci permetta di gestire, in un DB, il Piano dei conti di un azienda. Nel corso della gestione d esercizio, si potranno registrare gli articoli

Dettagli

Introduzione al Linguaggio C

Introduzione al Linguaggio C Introduzione al Linguaggio C File I/O Daniele Pighin April 2009 Daniele Pighin Introduzione al Linguaggio C 1/15 Outline File e dati Accesso ai file File I/O Daniele Pighin Introduzione al Linguaggio C

Dettagli

Struttura di un programma Java

Struttura di un programma Java Struttura di un programma Java Un programma in Java è un insieme di dichiarazioni di classi. Una classe non può contenere direttamente delle istruzioni, ma può contenere la dichiarazione di metodi, che

Dettagli

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica Corso di Laurea Ingegneria Informatica Fondamenti di Informatica Dispensa E01 Esempi di programmi A. Miola Ottobre 2011 1 Contenuti Vediamo in questa lezione alcuni primi semplici esempi di applicazioni

Dettagli

Variabili e tipi di dato

Variabili e tipi di dato Variabili e tipi di dato Tutte le variabili devono essere dichiarate, specificandone il tipo La dichiarazione deve precedere l uso Il tipo è un concetto astratto che esprime: L allocazione di spazio per

Dettagli

Convertitori numerici in Excel

Convertitori numerici in Excel ISTITUTO DI ISTRUZIONE SUPERIORE G. M. ANGIOY CARBONIA Convertitori numerici in Excel Prof. G. Ciaschetti Come attività di laboratorio, vogliamo realizzare dei convertitori numerici con Microsoft Excel

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica Modulo T3 1-Sottoprogrammi 1 Prerequisiti Tecnica top-down Programmazione elementare 2 1 Introduzione Lo scopo di questa Unità è utilizzare la metodologia di progettazione top-down

Dettagli

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

Università di Torino Facoltà di Scienze MFN Corso di Studi in Informatica. Programmazione I - corso B a.a. 2009-10. prof. Università di Torino Facoltà di Scienze MFN Corso di Studi in Informatica Programmazione I - corso B a.a. 009-10 prof. Viviana Bono Blocco 9 Metodi statici: passaggio parametri, variabili locali, record

Dettagli

Il programmatore che c e in noi Lezione 12 Statements

Il programmatore che c e in noi Lezione 12 Statements Il programmatore che c e in noi Lezione 12 Statements Mi sveglio, vado in bagno, doccia, colazione. Per colazione, preparo il caffe, accendo il gas, se e acceso metto la caffettiera sopra il fornello ed

Dettagli

Funzioni. Il modello console. Interfaccia in modalità console

Funzioni. Il modello console. Interfaccia in modalità console Funzioni Interfaccia con il sistema operativo Argomenti sulla linea di comando Parametri argc e argv Valore di ritorno del programma La funzione exit Esercizio Calcolatrice 2, presente in tutti i programmi

Dettagli

----------------------------------------------------------------

---------------------------------------------------------------- ---------------------------------------------------------------- utilizzo frequente di chiamate a.. A differenza del Pascal, il C permette di operare con assegnamenti e confronti su dati di tipo diverso,

Dettagli

Dispensa di database Access

Dispensa di database Access Dispensa di database Access Indice: Database come tabelle; fogli di lavoro e tabelle...2 Database con più tabelle; relazioni tra tabelle...2 Motore di database, complessità di un database; concetto di

Dettagli

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

Programmazione in Java (I modulo) Lezione 3: Prime nozioni Programmazione in Java (I modulo) Lezione 3: Prime nozioni La volta scorsa Abbiamo avuto un primo assaggio! Abbiamo visto come usare l editor per scrivere un programma Java. Abbiamo analizzato riga per

Dettagli

Alcune regole di base per scrivere un programma in linguaggio C

Alcune regole di base per scrivere un programma in linguaggio C Alcune regole di base per scrivere un programma in linguaggio C Un programma il linguaggio C (listato) viene scritto in formato testo ed archiviato in un file: *.c Per scrivere un listato C si utilizza

Dettagli

void funzioneprova() { int x=2; cout<<"dentro la funzione x="<<x<<endl; }

void funzioneprova() { int x=2; cout<<dentro la funzione x=<<x<<endl; } FUNZIONI 57. Cosa servono le funzioni? A spezzare il programma in diverse parti relativamente indipendenti fra loro, ovvero interagenti sono attraverso i parametri di input ed IL VALORE di uscita. In questo

Dettagli

Università degli Studi di Cassino Corso di Fondamenti di Informatica Puntatori. Anno Accademico 2010/2011 Francesco Tortorella

Università degli Studi di Cassino Corso di Fondamenti di Informatica Puntatori. Anno Accademico 2010/2011 Francesco Tortorella Corso di Informatica Puntatori Anno Accademico 2010/2011 Francesco Tortorella Variabili, registri ed indirizzi Abbiamo visto che la definizione di una variabile implica l allocazione (da parte del compilatore)

Dettagli

NOZIONI BASE SHELL E SCRIPT LINUX

NOZIONI BASE SHELL E SCRIPT LINUX NOZIONI BASE SHELL E SCRIPT LINUX Aggiornato al 11 gennaio 2006 Ermes ZANNONI (ermes@zannoni.to.it) (http://www.zannoni.to.it) Indice : 1. Introduzione 2. La Shell 2.1 Comandida Shell 2.1.1 File e directory

Dettagli

Informatica B. Breve introduzione all ambiente di programmazione. Politecnico di Milano IV Facoltà di Ingegneria 2003

Informatica B. Breve introduzione all ambiente di programmazione. Politecnico di Milano IV Facoltà di Ingegneria 2003 Informatica B Breve introduzione all ambiente di programmazione Politecnico di Milano IV Facoltà di Ingegneria 2003 Dal sorgente all eseguibile File Sorgente.C Compilatore File Oggetto.OBJ Librerie.lib

Dettagli

Calcolare il massimo di una lista

Calcolare il massimo di una lista Calcolare il massimo di una lista Ieri abbiamo imparato a calcolare il massimo di una lista predefinita: lista = [4,24,-89,81,3,0,-12,31] max = lista[0] # questo e' un commento: primo elemento di lista

Dettagli

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

12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP) 12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP) Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica,

Dettagli

Informatica B. Sezione D. Scuola di Ingegneria Industriale Laurea in Ingegneria Energetica Laurea in Ingegneria Meccanica

Informatica B. Sezione D. Scuola di Ingegneria Industriale Laurea in Ingegneria Energetica Laurea in Ingegneria Meccanica Scuola di Ingegneria Industriale Laurea in Ingegneria Energetica Laurea in Ingegneria Meccanica Dipartimento di Elettronica, Informazione e Bioingegneria Informatica B Sezione D Franchi Alessio Mauro,

Dettagli

Eclipse - Nozioni Base

Eclipse - Nozioni Base Eclipse - Nozioni Base 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

Concetto di Funzione e Procedura METODI in Java

Concetto di Funzione e Procedura METODI in Java Fondamenti di Informatica Concetto di Funzione e Procedura METODI in Java Fondamenti di Informatica - D. Talia - UNICAL 1 Metodi e Sottoprogrammi Mentre in Java tramite le classi e gli oggetti è possibile

Dettagli

RISOLUTORE AUTOMATICO PER SUDOKU

RISOLUTORE AUTOMATICO PER SUDOKU RISOLUTORE AUTOMATICO PER SUDOKU Progetto Prolog - Pierluigi Tresoldi 609618 INDICE 1.STORIA DEL SUDOKU 2.REGOLE DEL GIOCO 3.PROGRAMMAZIONE CON VINCOLI 4.COMANDI DEL PROGRAMMA 5.ESEMPI 1. STORIA DEL SUDOKU

Dettagli

Capitolo 3. L applicazione Java Diagrammi ER. 3.1 La finestra iniziale, il menu e la barra pulsanti

Capitolo 3. L applicazione Java Diagrammi ER. 3.1 La finestra iniziale, il menu e la barra pulsanti Capitolo 3 L applicazione Java Diagrammi ER Dopo le fasi di analisi, progettazione ed implementazione il software è stato compilato ed ora è pronto all uso; in questo capitolo mostreremo passo passo tutta

Dettagli

SISTEMI OPERATIVI. Prof. Enrico Terrone A. S: 2008/09

SISTEMI OPERATIVI. Prof. Enrico Terrone A. S: 2008/09 SISTEMI OPERATIVI Prof. Enrico Terrone A. S: 2008/09 Che cos è il sistema operativo Il sistema operativo (SO) è il software che gestisce e rende accessibili (sia ai programmatori e ai programmi, sia agli

Dettagli

Introduzione. Laboratorio di Calcolo Corso di Laurea in Fisica. Università degli Studi di Roma La Sapienza

Introduzione. Laboratorio di Calcolo Corso di Laurea in Fisica. Università degli Studi di Roma La Sapienza Introduzione Laboratorio di Calcolo Corso di Laurea in Fisica Università degli Studi di Roma La Sapienza WARNING Questo canale è solo per studenti di Fisica il cui cognome inizia con le lettere A-D Laboratorio

Dettagli

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

COS È UN LINGUAGGIO? LINGUAGGI DI ALTO LIVELLO LA NOZIONE DI LINGUAGGIO LINGUAGGIO & PROGRAMMA LINGUAGGI DI ALTO LIVELLO Si basano su una macchina virtuale le cui mosse non sono quelle della macchina hardware COS È UN LINGUAGGIO? Un linguaggio è un insieme di parole e di metodi di combinazione delle

Dettagli

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

Java:Struttura di Programma. Fabio Scanu a.s. 2014/2015 Java:Struttura di Programma Fabio Scanu a.s. 2014/2015 Altre Attenzioni da riservare Java è Case Sensitive: La variabile «a» e la variabile «A» sono diverse Java ha alcune regole di scrittura: I nomi delle

Dettagli

Fondamenti di Informatica 2

Fondamenti di Informatica 2 Fondamenti di Informatica 2 della prova scritta del 28 Febbraio 2006 Esercizio 1 (4 punti) Date le seguenti variabili int A[] = 2,3,7,-2,5,8,-4; int N = 7; int min = 3; int i; Scrivere la porzione di codice

Dettagli

GUIDA ALLA PROGRAMMAZIONE GRAFICA IN C

GUIDA ALLA PROGRAMMAZIONE GRAFICA IN C GUIDA ALLA PROGRAMMAZIONE GRAFICA IN C.:luxx:. PREMESSE In questa guida non verranno trattati i costrutti di flusso, le funzioni, o comunque le caratteristiche del linguaggio, che si danno come presupposte.

Dettagli

Corso integrato di informatica, statistica e analisi dei dati sperimentali Altri esercizi_esercitazione V

Corso integrato di informatica, statistica e analisi dei dati sperimentali Altri esercizi_esercitazione V Corso integrato di informatica, statistica e analisi dei dati sperimentali Altri esercizi_esercitazione V Sui PC a disposizione sono istallati diversi sistemi operativi. All accensione scegliere Windows.

Dettagli

Definire all'interno del codice un vettore di interi di dimensione DIM, es. int array[] = {1, 5, 2, 4, 8, 1, 1, 9, 11, 4, 12};

Definire all'interno del codice un vettore di interi di dimensione DIM, es. int array[] = {1, 5, 2, 4, 8, 1, 1, 9, 11, 4, 12}; ESERCIZI 2 LABORATORIO Problema 1 Definire all'interno del codice un vettore di interi di dimensione DIM, es. int array[] = {1, 5, 2, 4, 8, 1, 1, 9, 11, 4, 12}; Chiede all'utente un numero e, tramite ricerca

Dettagli

APPUNTI SUL LINGUAGGIO DI PROGRAMMAZIONE PASCAL

APPUNTI SUL LINGUAGGIO DI PROGRAMMAZIONE PASCAL APPUNTI SUL LINGUAGGIO DI PROGRAMMAZIONE PASCAL In informatica il Pascal è un linguaggio di programmazione creato da Niklaus Wirth ed é un linguaggio di programmazione strutturata. I linguaggi di programmazione

Dettagli

Sistema operativo. Sommario. Sistema operativo...1 Browser...1. Convenzioni adottate

Sistema operativo. Sommario. Sistema operativo...1 Browser...1. Convenzioni adottate MODULO BASE Quanto segue deve essere rispettato se si vuole che le immagini presentate nei vari moduli corrispondano, con buona probabilità, a quanto apparirà nello schermo del proprio computer nel momento

Dettagli

Breve riepilogo della puntata precedente:

Breve riepilogo della puntata precedente: Breve riepilogo della puntata precedente: 1. In C, il passaggio dei parametri alle funzioni avviene sempre per copia, ovvero il valore del parametro viene copiato all'interno della variabile che rappresenta

Dettagli

APPELLO SCRITTO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO 2014 2015 17.XI.2015

APPELLO SCRITTO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO 2014 2015 17.XI.2015 APPELLO SCRITTO DI PROGRAMMAZIONE 1 CORSO DI LAUREA IN MATEMATICA UNIVERSITÀ DEGLI STUDI DI MILANO 2014 2015 17.XI.2015 VINCENZO MARRA Indice Esercizio 1 1 Conversione di un numero naturale in base b.

Dettagli

OTTAVA ESPERIENZA DI LABORATORIO. L elaborazione dei files in C

OTTAVA ESPERIENZA DI LABORATORIO. L elaborazione dei files in C CORSO DI LABORATORIO DI INFORMATICA CORSO DI LAUREA IN SDM ANNO ACCADEMICO 2011-2012 Docente: R. Sparvoli Esercitazioni: R. Sparvoli, F. Palma OTTAVA ESPERIENZA DI LABORATORIO L elaborazione dei files

Dettagli

INFORMATICA 1 L. Mezzalira

INFORMATICA 1 L. Mezzalira INFORMATICA 1 L. Mezzalira Possibili domande 1 --- Caratteristiche delle macchine tipiche dell informatica Componenti hardware del modello funzionale di sistema informatico Componenti software del modello

Dettagli

Linguaggi di programmazione

Linguaggi di programmazione Linguaggi di programmazione Un calcolatore basato sul modello di von Neumann permette l esecuzione di un programma, cioè di una sequenza di istruzioni descritte nel linguaggio interpretabile dal calcolatore

Dettagli

Software di base. Corso di Fondamenti di Informatica

Software di base. Corso di Fondamenti di Informatica Dipartimento di Informatica e Sistemistica Antonio Ruberti Sapienza Università di Roma Software di base Corso di Fondamenti di Informatica Laurea in Ingegneria Informatica (Canale di Ingegneria delle Reti

Dettagli

Fondamenti di Programmazione

Fondamenti di Programmazione Fondamenti di Programmazione Capitolo 2 Variabili, Espressioni e Comandi Prof. Mauro Gaspari: gaspari@cs.unibo.it Valori e Tipi Un valore (= value) è una delle entità fondamentali che i programmi sono

Dettagli

Finestre grafiche. >> figure >> figure(n)

Finestre grafiche. >> figure >> figure(n) Finestre grafiche MATLAB ha anche la possibilità di lavorare con delle finestre grafiche sulle quali si possono fare disegni bidimensionali o tridimensionali. Una finestra grafica viene aperta con il comando

Dettagli

lo 2 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000

lo 2 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000 Capittol lo 2 Visualizzazione 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000 Nel primo capitolo sono state analizzate le diverse componenti della finestra di Word 2000: barra del titolo, barra dei menu,

Dettagli

Introduzione al Python

Introduzione al Python Andrea Passerini passerini@disi.unitn.it Informatica Caratteristiche procedurale si specifica la procedura da eseguire sui dati strutturato concetto di visibililtà delle variabili orientato agli oggetti

Dettagli

3. La sintassi di Java

3. La sintassi di Java pag.9 3. La sintassi di Java 3.1 I tipi di dati statici In Java, come in Pascal, esistono tipi di dati statici predefiniti e sono i seguenti: byte 8 bit da -128 a 127 short 16 bit coincide con l integer

Dettagli

Calcolatori Elettronici A a.a. 2008/2009

Calcolatori Elettronici A a.a. 2008/2009 Calcolatori Elettronici A a.a. 2008/2009 PRESTAZIONI DEL CALCOLATORE Massimiliano Giacomin Due dimensioni Tempo di risposta (o tempo di esecuzione): il tempo totale impiegato per eseguire un task (include

Dettagli

Dispensa di Informatica I.1

Dispensa di Informatica I.1 IL COMPUTER: CONCETTI GENERALI Il Computer (o elaboratore) è un insieme di dispositivi di diversa natura in grado di acquisire dall'esterno dati e algoritmi e produrre in uscita i risultati dell'elaborazione.

Dettagli

http://www.programmiamo.altervista.org/c/oop/o...

http://www.programmiamo.altervista.org/c/oop/o... PROGRAMMIAMO Programma per la gestione di un conto corrente C++ - Costruttore e distruttore C++ Home Contatti Supponiamo ora di voler scrivere un programma a menu per la gestione di un conto corrente bancario.

Dettagli

Libreria standard Java possiede un enorme libreria di classi standard organizzata in vari package che raccolgono le classi secondo un organizzazione

Libreria standard Java possiede un enorme libreria di classi standard organizzata in vari package che raccolgono le classi secondo un organizzazione Libreria standard Java possiede un enorme libreria di classi standard organizzata in vari package che raccolgono le classi secondo un organizzazione basata sul campo d utilizzo. I principali package sono:

Dettagli

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

Algebra di Boole: Concetti di base. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica Fondamenti di Informatica Algebra di Boole: Concetti di base Fondamenti di Informatica - D. Talia - UNICAL 1 Algebra di Boole E un algebra basata su tre operazioni logiche OR AND NOT Ed operandi che possono

Dettagli

Javascript: il browser

Javascript: il browser Javascript: il browser Un browser è un programma Un browser interpreta il linguaggio HTML e visualizza le pagine sullo schermo Per la visualizzazione delle pagine un browser si appoggia al software di

Dettagli

Utilizzo delle formule in Excel

Utilizzo delle formule in Excel Utilizzo delle formule in Excel Excel è dotato di un potente motore di calcolo che può essere utilizzato per elaborare i dati immessi dagli utenti. I calcoli sono definiti mediante formule. Ogni formula

Dettagli

Laboratorio di Programmazione 1. Docente: dr. Damiano Macedonio Lezione 18 31/03/2014

Laboratorio di Programmazione 1. Docente: dr. Damiano Macedonio Lezione 18 31/03/2014 Laboratorio di Programmazione 1 1 Docente: dr. Damiano Macedonio Lezione 18 31/03/2014 Funzioni: Dichiarazione e Definizione La dichiarazione di una funzione serve a comunicare al compilatore quali sono

Dettagli

SISTEMI DI NUMERAZIONE DECIMALE E BINARIO

SISTEMI DI NUMERAZIONE DECIMALE E BINARIO SISTEMI DI NUMERAZIONE DECIMALE E BINARIO Il sistema di numerazione decimale (o base dieci) possiede dieci possibili valori (0, 1, 2, 3, 4, 5, 6, 7, 8 o 9) utili a rappresentare i numeri. Le cifre possiedono

Dettagli

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

Algoritmo. I dati su cui opera un'istruzione sono forniti all'algoritmo dall'esterno oppure sono il risultato di istruzioni eseguite precedentemente. Algoritmo Formalmente, per algoritmo si intende una successione finita di passi o istruzioni che definiscono le operazioni da eseguire su dei dati (=istanza del problema): in generale un algoritmo è definito

Dettagli

Fondamenti di Informatica e Laboratorio T-AB T-16 Progetti su più file. Funzioni come parametro. Parametri del main

Fondamenti di Informatica e Laboratorio T-AB T-16 Progetti su più file. Funzioni come parametro. Parametri del main Fondamenti di Informatica e Laboratorio T-AB T-16 Progetti su più file. Funzioni come parametro. Parametri del main Paolo Torroni Dipartimento di Elettronica, Informatica e Sistemistica Università degli

Dettagli

PROGRAMMI UTENTE INTERPRETE COMANDI FILE SYSTEM GESTIONE DELLE PERIFERICHE GESTIONE DELLA MEMORIA GESTIONE DEI PROCESSI (NUCLEO) HARDWARE

PROGRAMMI UTENTE INTERPRETE COMANDI FILE SYSTEM GESTIONE DELLE PERIFERICHE GESTIONE DELLA MEMORIA GESTIONE DEI PROCESSI (NUCLEO) HARDWARE IL SISTEMA OPERATIVO Insieme di programmi che opera al di sopra della macchina fisica, mascherandone le caratteristiche e fornendo agli utenti funzionalità di alto livello. PROGRAMMI UTENTE INTERPRETE

Dettagli

EXCEL FUNZIONI PRINCIPALI

EXCEL FUNZIONI PRINCIPALI EXCEL FUNZIONI PRINCIPALI Funzione SE() Sintassi: SE(VERIFICA, VALORE SE VERO, VALORE SE FALSO): verifica un valore e ritorna una risposta in base al risultato vero/falso Esempio: =SE(A2=15; "OK"; "NO")

Dettagli

Il sistema operativo UNIX/Linux. Gli script di shell

Il sistema operativo UNIX/Linux. Gli script di shell Il sistema operativo UNIX/Linux Gli script di shell Introduzione Le shell permettono La gestione di comandi su linea di comando La shell comprende automaticamente quando il costrutto termina e lo esegue

Dettagli

Prova di Laboratorio di Programmazione

Prova di Laboratorio di Programmazione Prova di Laboratorio di Programmazione 6 febbraio 015 ATTENZIONE: Non è possibile usare le classi del package prog.io del libro di testo. Oltre ai metodi richiesti in ciascuna classe, è opportuno implementare

Dettagli

Tutorial sugli ambienti di sviluppo: Eclipse e NetBeans

Tutorial sugli ambienti di sviluppo: Eclipse e NetBeans Tutorial sugli ambienti di sviluppo: Eclipse e NetBeans Prima di tutto va installato il compilatore, ottenibile scaricando ed installando MinGW o CygWin. MinGW: http://www.mingw.org/download.shtml CygWin:

Dettagli