Laboratorio Algoritmi 2014 Secondo Semestre
|
|
- Marianna Bianco
- 8 anni fa
- Visualizzazioni
Transcript
1 Laboratorio Algoritmi 2014 Secondo Semestre Lunedì 14:30 17:30 Aula 2. Ricevimento: inviare a frasca@di.unimi.it. 44 ore (9 CFU) Linguaggio di programmazione: MATLAB Esame : progetto e/o prova scritta di laboratorio Sito del corso
2 MATLAB(Matrix Laboratory) Ambiente per il calcolo numerico per applicazioni tecniche e scientifiche Integra computazione, visualizzazione, e programmazione (linguaggio interpretato) in un ambiente di sviluppo Può essere utilizzato a diversi livelli di complessità: dall utilizzo interattivo per la risoluzione di semplici problemi, fino alla programmazione di applicazioni complesse cui MATLAB fornisce il motore computazionale
3 MATLAB: vantaggi MATLAB è un software di calcolo scientifico che semplifica la scrittura di algoritmi Linguaggio interpretato: stesso codice eseguibile su architetture diverse grazie all'interprete MATLAB Non è necessario specificare il tipo delle variabili E possibile modificare agevolmente le strutture dei dati Implementa molte funzioni già pronte
4 MATLAB: svantaggi Naturalmente MATLAB presenta anche alcuni svantaggi Bisogna prestare attenzione al tipo delle variabili Una script MATLAB è in genere un po più lento di un programma compilato e occupa più memoria La gestione della memoria può essere piuttosto inefficiente E a pagamento
5 MATLAB: interprete Command line INPUT: Comandi MATLAB OUTPUT Interprete MATLAB: codifica per l'architettura sottostante Hard Disk CPU RAM Risorse di Sistema
6 Esecuzione Programmi Memoria centrale (RAM) Memoria centrale (RAM) Istruzione 1 Istruzione2 CPU Istruzione 1 Istruzione2 Secondo passo Istruzione3 Istruzione4 Istruzione3 Istruzione4 CPU Interprete Matlab Interprete Matlab Primo passo Programma pre-compilato Programma MATLAB
7 La Finestra dei Comandi (Command Window) La finestra dei comandi (Command Window) è uno degli strumenti principali in MATLAB per inserire dati, eseguire funzioni ed applicazioni, visualizzare risultati. Il prompt della Command Window, >>, è il punto in cui inserire i comandi. Il prompt indica che MATLAB è pronto ad accettare l input dall utente I comandi immessi nella Command Window vengono immediatamente interpretati ed eseguiti da MATLAB.
8 La Finestra dei Comandi (Command Window)
9 La Finestra dei Comandi (Command Window) Per eseguire un comando è sufficiente digitare il comando stesso e premere invio Esempi: >> 7/5 (INVIO) ans= >> log(1.0) (INVIO) ans= 0
10 Cronologia dei Comandi (Command History) Le istruzioni digitate nella Finestra dei Comandi vengono registrate e memorizzate nella Cronologia dei Comandi (Command History). Dalla Cronologia dei Comandi è possibile risalire ai comandi precedentemente eseguiti, selezionarne alcuni e rieseguirli.
11 Directory corrente e percorsi (paths) Tutte le operazioni su file in MATLAB fanno rifermento alla directory corrente e al search path. Qualunque file si voglia utilizzare in MATLAB, questo deve essere collocato o nella directory corrente o in una directory inclusa nel search path. La directory corrente può essere visualizzata o modificata attravero la toolbar del desktop MATLAB.
12 Workspace Il workspace ( spazio di lavoro ) di MATLAB consiste nell insieme di variabili definite durante una sessione di lavoro e memorizzate da MATLAB. Il workspace browser consente di visualizzare ed ottenere informazioni relative ad ogni variabile presente nel workspace. Il workspace non viene mantenuto dopo la fine di una sessione. Tuttavia può essere salvato e ricaricato per un altra sessione. Per salvare il workspace si seleziona File > Save Workspace As... Il workspace viene salvato in un MAT-file (file binario con estensione.mat)
13 Help Esistono un certo numero di tutorial e libri su MATLAB che coprono gli argomenti più disparati. In genere è comunque sufficiente l help in linea di MATLAB. >>help oppure >> help comando
14 Parole chiave MATLAB riserva alcune parole per usarle come parole chiave del linguaggio. La lista delle parole chiave si ottiene digitando iskeyword nella Finestra dei Comandi Break, case, catch, continue, else, elseif, end, for, function, global, if, otherwise, persistent, return, switch, try, while
15 Variabili Le variabili consentono di memorizzare un valore in un area di memoria. Hanno un tipo specifico. Il valore assegnato ad una variabile può essere modificato durante l esecuzione del programma. Le variabili sono identificate da un nome. Il nome di una variabile in MATLAB deve iniziare con una lettera che può essere seguita da una qualunque combinazione di lettere, numeri e caratteri underscore (_). Nota: MATLAB è case sensitive, ovvero distingue tra lettere maiuscole e minuscole.
16 Tipi di dati Esistono diversi tipi di dati fondamentali (built-in) in MATLAB. Gli utenti possono definire ulteriori tipi di dati attraverso le estensioni object-oriented del linguaggio. Tutti i tipi di dati sono implementati sotto forma di matrice o vettore.
17 Numeri interi Esistono in MATLAB 4 tipi di interi con segno e 4 tipi di interi senza segno. Esempio: x = int16(325);
18 Numeri reali I numeri reali sono memorizzati in formato floating-point a precisione doppia (double 64 bit) o singola (single 32 bit). Per default MATLAB impiega il formato a precisione doppia. I numeri a precisione singola si ottengono convertendo un numero a precisione doppia attraverso l istruzione single. Esempio: x = single(25.783); Whos clear
19 Conversioni e arrotondamenti Per default MATLAB memorizza i numeri in formato floating-point a precisione doppia (double). Per memorizzare un dato come numero intero deve essere operata una conversione esplicita. Nelle conversioni da double a intero per default MATLAB opera l arrotondamento all intero più vicino Esempio:x = ; int16(x) ans = 325 x = x +.001; int16(x) ans = 326 Se occorre un altro tipo di arrotondamento, MATLAB fornisce 4 funzioni: round (per eccesso/difetto), fix (parte intera), ceil (intero superiore) e floor (intero inferiore)
20 Il tipo Logical Il tipo logical è usato per rappresentare variabili booleane che possono assumere il valore true (vero = 1) o false (falso = 0). Gli operatori relazionali ed alcune funzioni MATLAB ritornano output di tipo logical. Possono essere definite singole variabili di tipo logical o matrici di elementi di tipo logical. Esempio: x = [true, true, false, true, false]; y = rand(3) > 0.5;
21 Caratteri e stringhe Si possono specificare caratteri e stringhe racchiudendoli tra Singoli apici Esempio: >> character = a ; >> string = MATLAB ; Per confrontare due stringhe si può usare: strcmp: ritorna 1 se le stringhe sono identiche, 0 altrimenti. ATTENZIONE: è diverso dal C. strncmp determina se i primi n caratteri di due stringhe sono identici.
22 Caratteri: codice ASCII char converte un numero intero positivo nel carattere Equivalente. >> char(126) ans = ~ Esistono 95 caratteri ASCII stampabili, numerati da 32 a 126
23 Conversioni tra numeri e stringhe int2str converte un numero intero in un carattere. str2num converte una stringa in un tipo numerico Esempi: >>char([72 105]) ans = Hi >>str2num( ) ans =
24 Operazioni aritmetiche e... Per le variabili numeriche sono disponibili le usuali operazioni (+, -, *, /), e molte altre (sqrt(), exp(),...). Bisogna prestare attenzione al fatto che le operazioni posso dare risultati diversi a seconda del tipo di dato. La sequenza di comandi a = int8(2) b = int8(3) c = a/b assegna a c il valore 1. La sequenza di comandi assegna a c il valore a = 2 b = 3 c = a/b
25 Valori speciali In MATLAB esistono alcuni valori numerici speciali, in particolare NaN (Not a Number) e Inf (Infinity). NaN indica una operazione per la quale il valore è indefinito, mentre Inf indica un valore infinito. Esempi: >>1/0 Inf >>0/0 NaN Per una spiegazione più precisa del funzionamento di questi valori vi rimando all help in linea.
26 Operatori relazionali
27 Operatori logici Sono disponibili gli usuali operatori logici Operatore Sintassi AND & OR NOT ~ >> 1 & 5 ans = 1 >> 1 0 ans = 1
28 Matrici, vettori e scalari La matrice è il tipo di dato fondamentale in MATLAB Le matrici sono rappresentate come array bidimensionali di numeri. Assumono un significato particolare le matrici 1 x 1, usate per rappresentare gli scalari e le matrici con una sola riga o una sola colonna, usate per rappresentare i vettori. Mentre altri linguaggi di programmazione operano generalmente su scalari, il linguaggio di programmazione MATLAB opera soltanto su matrici.
29 Creare matrici Si può creare una matrice in MATLAB: Inserendo esplicitamente i dati nella matrice Caricando una matrice da un file di dati esterno Generando una matrice per mezzo di una delle funzioni predefinite disponibili in MATLAB Generando una matrice in funzioni predisposte dall utente e salvate in un M-file
30 Creare matrici inserendo manualmente i dati I dati si inseriscono nella Finestra dei Comandi seguendo queste regole: Gli elementi all interno di una riga sono separati da virgola (,) o spazio Le righe sono separate dal punto e virgola (;) L intera lista di elementi deve essere racchiusa tra parentesi quadre ([ ]) >> A = [1 2 3; 4 5 6; 7 8 9]; >> A(2,1) = 4
31 Generare matrici usando le funzioni predefinite MATLAB fornisce le seguenti funzioni per generare matrici: zeros: genera una matrice in cui tutti gli elementi hanno valore zero ones: genera una matrice in cui tutti gli elementi hanno valore uno rand e randn: generano una matrice in cui tutti gli elementi assumono un valore casuale secondo una distribuzione rispettivamente uniforme e normale eye: genera una matrice in cui tutti gli elementi sulla diagonale principale valgono uno e gli altri elementi valgono zero >> ones(3,6) ; eye(7,8)
32 Matrici La matrici possono avere un numero arbitrario di dimensioni Tuttavia tutti gli elementi della matrice hanno lo stesso tipo Per accedere agli elementi di una matrice uso le parentesi tonde. Posso accedere a gruppi di elementi specificandoli >>A([1 2], 2) mi ritornerà i valori A(1,2) e A(2,2)
33 Matrici Per accedere a valori consecutivi posso usare l operatore : La sintassi generale dell operatore è >> a:b:c dove a, b e c sono valori numerici. In particolare questo comando mi ritornerà un vettore con le componenti a a+b a+2b a+3b... in maniera tale che nessuna componente superi il valore c
34 Matrici Una versione semplificata dell operatore : non ha l incremento In questo caso, si assume che l incremento sia 1. Che valori ottengo usando il comando seguente? >>1.5:4.6 Naturalmente l uso più più ovvio di : è per selezionare delle sottomatrici. >>A(1:2, 1:2) mi ritorna la sottomatrice composta dalle prime 2 righe e 2 colonne. Se invece volessi tutte le righe ma solo le prime 2 colonne dovrei scrivere >>A(:, 1:2)
35 Eliminazione di righe e colonne È possibile eliminare righe e colonne da una matrice utilizzando le parentesi quadre [], attribuite alla riga/colonna che si vuole eliminare. Ad esempio, eliminiamo la seconda colonna della matrice A: >> A(:, 2) = []
36 Dimensioni di una matrice Il comando size permette di ottenere informazioni sulle dimensioni di una matrice: size(m, 1) restituisce il numero di righe della matrice m size(m, 2) restituisce il numero di colonne di m size(m) restituisce un vettore riga contenente il numero di righe e il numero di colonne della matrice m
37 Somma e sottrazione di matrici I comandi di somma e sottrazione operano sulle matrici elemento per elemento. Definiamo ad esempio i vettori riga M = [1 2] e N = [3 4], e calcoliamo la somma M + N, o la differenza M - N Le operazioni di somma e sottrazione richiedono che le matrici che si sommano o si sottraggono abbiano tutte le stesse dimensioni.
38 Moltiplicazione di matrici La moltiplicazione di matrici è definita nel senso di moltiplicazione righe per colonne. Per poter effettuare la moltiplicazione il numero di colonne del primo fattore deve essere uguale al numero di righe del secondo fattore Il risultato sarà una matrice avente un numero di righe pari a quello del primo fattore e un numero di colonne pari a quello del secondo fattore Se R è una matrice m x n e S è una matrice n x p, Q = R * S sarà una matrice m x p.
39 Moltiplicazione di matrici Esempio: definiamo due matrici R e S e ne calcoliamo il prodotto Q = R * S L operatore.* consente di operare il prodotto elemento per elemento. Riconsideriamo ad esempio i vettori riga M = [1 2] e N = [3 4], e calcoliamo il prodotto elemento per elemento M.* N.
40 Esempi x = int16(365) x = int8(365) g = uint64(45) a = int32(1000) whos e = 3.5 r = single(3.5) whos floor(e) fix(e) floor(-e) fix(-e) ceil(e) round(e) ceil(-e) round(-e)
41 Esempi aa = 3.6 ll= aa>5 whos [1 4 0] &[3 0 1] ones(3,6) A=eye(7,8) 8:2:20 8:20 A(:,2:5)
42 Esempi str1 = 'ciao' c = 'c' str2 = 'ciaom' whos strcmp(str1,str2) strncmp(str1,str2,4) strncmp(str1,str2,5)
43 Controllo del flusso Istruzioni: if, else, elseif L istruzione if valuta un espressione logica ed esegue una sequenza di istruzioni se l espressione è vera. Nella sua forma più semplice, la sintassi è la seguente: if logical_expression statements end La sequenza di istruzioni da eseguire è delimitata dalle parole chiave if e end. Nota: non occorrono parentesi come in C
44 Controllo del flusso L istruzione else precede una sequenza di istruzioni che vengono eseguite se l espressione calcolata dall istruzione if a cui è associata risulta falsa. All istruzione else non è associata alcuna espressione da valutare. L istruzione elseif valuta l espressione logica a lei associata solo se l espressione logica associata all istruzione if che la precede e quelle associate ad eventuali altre istruzioni elseif precedenti sono tutte false.
45 Controllo del flusso if expression1 statement1 elseif expression2 statement2 else statement3 end if a~=0 tmp = 1/a; elseif b~=0 tmp = 1/b; else disp('a==0 e b==0') end
46 Controllo del flusso Comandi utili per confronti numerici isequal: ritorna vero se tutte le matrici passate come parametro sono uguali isempty: ritorna vero se la matrice passata come parametro è vuota all: ritorna vero se nessuno degli elementi del vettore passato come parametro vale 0. Sulle matrici opera colonna per colonna. any: ritorna vero se almeno uno degli elementi del vettore passato come parametro è diverso da 0. Sulle matrici opera colonna per colonna.
47 Controllo del flusso Un secondo comando per il controllo del flusso è lo switch: switch expression case value1 statement1 case value2 statement2... otherwise statement_o end L istruzione switch esegue una diversa sequenza di istruzioni in base al valore di una variabile o di un espressione. Le parole chiave case e otherwise delimitano le diverse sequenze da eseguire.
48 Controllo del flusso L istruzione switch può essere seguita da un qualunque numero di blocchi case. Il blocco otherwise è opzionale e si trova sempre dopo tutti i blocchi case e prima di end. Se l espressione da valutare è una stringa, la comparazione con i valori gestiti dai vari blocchi case è operata con la funzione strcmp. Diversamente dal C, dopo l esecuzione di un blocco case, MATLAB passa oltre il termine dell istruzione switch. Le istruzioni break NON sono quindi necessarie. Un singolo case può gestire più valori contemporaneamente.
49 Controllo del flusso switch n Case {1, 2} disp( Positivo ) case 0 disp( Zero ) case {-1,-2} disp( Negativo ) otherwise disp( un altro valore ) end
50 Istruzioni di loop L istruzione for esegue un istruzione o una sequenza di istruzioni un dato numero di volte. La sintassi è la seguente: for index = start:increment:end statements end L incremento predefinito è 1. E tuttavia possibile specificare un incremento diverso, anche negativo. Per indici positivi, l esecuzione termina quando il valore dell indice supera il valore finale Per incrementi negativi, il ciclo si conclude quando il valore dell indice scende al di sotto del valore finale.
51 Istruzioni di loop Per esempio posso usare il for per calcolare il fattoriale di n: fact = 1; for i = 1:n fact = fact*i; end Posso anche usare un for per calcolare la somma dei numeri contenti nel vettore A A = [ ]; j =0; for i = A j = j+i; End Comando sum, vedi help
52 Istruzioni di loop L istruzione while esegue un istruzione o una sequenza di istruzioni ripetutamente finché l espressione a lei associata risulta vera La sintassi è la seguente: while expression statements end Posso usare il while per trovare il numero di fattori 2 di un numero n = 24; i = 0; while mod(n,2) == 0 i = i + 1; n = n/2; end
53 Istruzione break Si può uscire da un ciclo for o while in qualunque momento usando l istruzione break. i = 2 while true i = i*2 if i>100 break end end
54 Istruzione continue L istruzione continue provoca l esecuzione della successiva iterazione di un ciclo for o while saltando l esecuzione della restante parte del ciclo k = 0 for i = 1:10 if mod(i, 2) == 0 continue end k = k+i end
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
DettagliIntroduzione allo Scilab Parte 1: numeri, variabili ed operatori elementari
Introduzione allo Scilab Parte 1: numeri, variabili ed operatori elementari Felice Iavernaro Dipartimento di Matematica Università di Bari http://dm.uniba.it/ iavernaro 6 Giugno 2007 Felice Iavernaro (Univ.
DettagliMatlab: Strutture di Controllo. Informatica B
Matlab: Strutture di Controllo Informatica B Tipo di dato logico È un tipo di dato che può avere solo due valori true (vero) 1 false (falso) 0 I valori di questo tipo possono essere generati direttamente
DettagliRichiesta 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
DettagliCorso di Visione Artificiale. Matlab per Visione. Samuel Rota Bulò
Corso di Visione Artificiale Matlab per Visione Samuel Rota Bulò Cos'è Matlab? MATLAB MATLAB - - MATrix MATrix LABoratory LABoratory Ambiente Ambiente di di sviluppo sviluppo ed ed esecuzione esecuzione
DettagliMATLAB. Caratteristiche. Dati. Esempio di programma MATLAB. a = [1 2 3; 4 5 6; 7 8 9]; b = [1 2 3] ; c = a*b; c
Caratteristiche MATLAB Linguaggio di programmazione orientato all elaborazione di matrici (MATLAB=MATrix LABoratory) Le variabili sono matrici (una variabile scalare equivale ad una matrice di dimensione
DettagliAlcune 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
DettagliLaboratorio 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
DettagliL utility Unix awk [Aho-Weinberger-Kernighan]
L utility Unix awk [Aho-Weinberger-Kernighan] L utility awk serve per processare file di testo secondo un programma specificato dall utente. L utility awk legge riga per riga i file ed esegue una o più
DettagliObiettivi d esame PHP Developer Fundamentals on MySQL Environment
Obiettivi d esame PHP Developer Fundamentals on MySQL Environment 1.0 Ambiente di sviluppo 1.1 Web server e database MySQL Comprendere la definizione dei processi che si occupano di fornire i servizi web
DettagliIntroduzione 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
DettagliArduino: 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
DettagliLaboratorio di Matematica Computazionale A.A. 2008-2009 Lab. 1 - Introduzione a Matlab
Laboratorio di Matematica Computazionale A.A. 2008-2009 Lab. 1 - Introduzione a Matlab Alcune informazioni su Matlab Matlab è uno strumento per il calcolo scientifico utilizzabile a più livelli, dalla
DettagliFinestre 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
DettagliAutomatizzare 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
DettagliIntroduzione 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
DettagliNascita 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
DettagliAlgebra 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
DettagliDescrizione di un algoritmo
Descrizione di un algoritmo Un algoritmo descrive due tipi fondamentali di oper: calcoli ottenibili tramite le oper primitive su tipi di dato (valutazione di espressioni) che consistono nella modifica
DettagliDIPARTIMENTO DI ELETTRONICA E INFORMAZIONE. Script. Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 13 Agosto 2014
Script Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 13 Agosto 2014 1 Obiettivi Script 2 Script (m-file) Uno script è un file di testo contenente una sequenza di comandi MATLAB
DettagliVariabili 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
Dettagli3. 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
DettagliPer 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
DettagliStudente: SANTORO MC. Matricola : 528
CORSO di LAUREA in INFORMATICA Corso di CALCOLO NUMERICO a.a. 2004-05 Studente: SANTORO MC. Matricola : 528 PROGETTO PER L ESAME 1. Sviluppare una versione dell algoritmo di Gauss per sistemi con matrice
DettagliLezione 8. La macchina universale
Lezione 8 Algoritmi La macchina universale Un elaboratore o computer è una macchina digitale, elettronica, automatica capace di effettuare trasformazioni o elaborazioni su i dati digitale= l informazione
DettagliInformatica. Rappresentazione dei numeri Numerazione binaria
Informatica Rappresentazione dei numeri Numerazione binaria Sistemi di numerazione Non posizionali: numerazione romana Posizionali: viene associato un peso a ciascuna posizione all interno della rappresentazione
DettagliAppunti 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)
DettagliEsercitazione Informatica I AA 2012-2013. Nicola Paoletti
Esercitazione Informatica I AA 2012-2013 Nicola Paoletti 4 Gigno 2013 2 Conversioni Effettuare le seguenti conversioni, tenendo conto del numero di bit con cui si rappresenta il numero da convertire/convertito.
DettagliCONTROLLI AUTOMATICI E AZIONAMENTI ELETTRICI Ingegneria Meccatronica
CONTROLLI AUTOMATICI E AZIONAMENTI ELETTRICI Ingegneria Meccatronica CONTROLLI AUTOMATICI e AZIONAMENTI ELETTRICI INTRODUZIONE A MATLAB Ing. Alberto Bellini Tel. 0522 522626 e-mail: alberto.bellini@unimore.it
DettagliAlgebra Booleana ed Espressioni Booleane
Algebra Booleana ed Espressioni Booleane Che cosa è un Algebra? Dato un insieme E di elementi (qualsiasi, non necessariamente numerico) ed una o più operazioni definite sugli elementi appartenenti a tale
DettagliRapida Introduzione all uso del Matlab Ottobre 2002
Rapida Introduzione all uso del Matlab Ottobre 2002 Tutti i tipi di dato utilizzati dal Matlab sono in forma di array. I vettori sono array monodimensionali, e così possono essere viste le serie temporali,
DettagliTipi 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
DettagliLa gestione dell input/output da tastiera La gestione dell input/output da file La gestione delle eccezioni
La gestione dell input/output da tastiera La gestione dell input/output da file La gestione delle eccezioni Autore: Prof. Agostino Sorbara ITIS "M. M. Milano" Autore: Prof. Agostino Sorbara ITIS "M. M.
DettagliAppunti 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)
DettagliFunzioni 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
DettagliLab. 1 - Introduzione a Matlab
Lab. 1 - Introduzione a Matlab Alcune informazioni su Matlab Matlab è uno strumento per il calcolo scientifico utilizzabile a più livelli, dalla calcolatrice tascabile, alla simulazione ed analisi di sistemi
Dettagli4 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
DettagliLaboratorio di Matlab
Laboratorio di Matlab Rudy Manganelli Dipartimento di Ingegneria dell Informazione, Università di Siena manganelli@dii.unisi.it http://www.dii.unisi.it/ control/matlab/labmatlab.html Luglio 2008 DII -
DettagliAPPUNTI 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
DettagliDati importati/esportati
Dati importati/esportati Dati importati Al workspace MATLAB script Dati esportati file 1 File di testo (.txt) Spreadsheet Database Altro Elaborazione dati Grafici File di testo Relazioni Codice Database
DettagliCorso 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
DettagliCodifica: 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
DettagliUtilizzo del linguaggio Basic utilizzando l interfaccia di Excel Silvia Patacchini
Introduzione all utilizzo di Visual Basic for Application Utilizzo del linguaggio Basic utilizzando l interfaccia di Excel Silvia Patacchini PROGRAMMAZIONE Insieme delle attività da svolgersi per creare
DettagliProf. Nicola Cappuccio ing.nicola.cappuccio@gmail.com
Excel e le sue Funzioni Guida Pratica per la realizzazione di Progetti Prof. Nicola Cappuccio ing.nicola.cappuccio@gmail.com Ing. Nicola Cappuccio 1 Sommario INT (funzione INT)... 3 Descrizione... 3 Sintassi...
DettagliCompilatore risorse display grafico LCD serie IEC-line
Compilatore risorse display grafico LCD serie IEC-line aggiornamento: 22-11-2012 IEC-line by OVERDIGIT overdigit.com 1. Il display grafico LCD I PLC della serie IPC-line possono disporre opzionalmente
DettagliInforma(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
DettagliStruttura logica di un programma
Struttura logica di un programma Tutti i programmi per computer prevedono tre operazioni principali: l input di dati (cioè l inserimento delle informazioni da elaborare) il calcolo dei risultati cercati
DettagliCalcolare 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
Dettagli3 - 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
DettagliJava: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
DettagliProgrammare 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
DettagliFunzioni matlab per la gestione dei file. Informatica B Prof. Morzenti
Funzioni matlab per la gestione dei file Informatica B Prof. Morzenti File Contenitori di informazione permanenti Sono memorizzati su memoria di massa Possono continuare a esistere indipendentemente dalla
DettagliManuale di realizzazione dei modelli di documento
MystiqueXML Manuale di realizzazione dei modelli di documento Indice 1 Le tabelle...5 1.1 Tabelle condizionali...5 1.2 Tabelle Multiple - un solo livello...5 1.3 Tabelle Multiple - a più livelli...5 2
DettagliEsercizi di JavaScript
Esercizi di JavaScript JavaScript JavaScript é un linguaggio di programmazione interpretato e leggero, creato dalla Netscape. E' presente a patire da Netscape 2 in tutti i browser ed é dunque il linguaggio
DettagliEXCEL FINESTRA DI EXCEL BARRE PRINCIPALI CARTELLA DI LAVORO BARRE DI SPOSTAMENTO
EXCEL FINESTRA DI EXCEL BARRE PRINCIPALI CARTELLA DI LAVORO BARRE DI SPOSTAMENTO BARRE PRINCIPALI GESTIONE FILE BARRA DEI MENU BARRA STANDARD Nuovo: si crea un nuovo foglio Apri: si carica un foglio da
Dettagli[MANUALE VISUAL BASIC SCUOLA24ORE PROF.SSA PATRIZIA TARANTINO] 14 dicembre 2008
Se devo memorizzare più valori che sono in qualche modo parenti dal punto di vista logico, posso usare il concetto di vettore di variabili (array). Ad esempio, se devo memorizzare le temperature di tutti
DettagliIl 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
DettagliSOMMARIO Coda (queue): QUEUE. QUEUE : specifica QUEUE
SOMMARIO Coda (queue): Specifica: interfaccia. Implementazione: Strutture indicizzate (array): Array di dimensione variabile. Array circolari. Strutture collegate (nodi). Prestazioni. Strutture Software
DettagliSOFTWARE. È 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
DettagliNode.js. REPL e oltre. by Stefano Burigat
Node.js REPL e oltre by Stefano Burigat Cos'è REPL? REPL (Read-Eval-Print-Loop) è un ambiente interattivo a riga di comando che permette di scrivere codice node ed eseguirlo istruzione per istruzione.
DettagliIntroduzione 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
DettagliDall 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
DettagliLa 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
DettagliOperazioni di input e output in Fortran 90
Operazioni di input e output in Fortran 90 Ing. Luca De Santis DIS - Dipartimento di informatica e sistemistica Anno accademico 2006/2007 Fortran 90: file e formattazione DIS - Dipartimento di informatica
DettagliI file di dati. Unità didattica D1 1
I file di dati Unità didattica D1 1 1) I file sequenziali Utili per la memorizzazione di informazioni testuali Si tratta di strutture organizzate per righe e non per record Non sono adatte per grandi quantità
DettagliAppunti sull uso di matlab - I
Appunti sull uso di matlab - I. Inizializazione di vettori.. Inizializazione di matrici.. Usare gli indici per richiamare gli elementi di un vettore o una matrice.. Richiedere le dimensioni di una matrice
DettagliEsercizio 1. Esercizi 5. Esercizio 3. Esercizio 2 CICLI
Esercizi 5 Esercizio 1 Realizzare una funzione che, chiesto all utente un numero intero pari a N, ricavi e stampi a video tutte le terne pitagoriche con i cateti minori o uguali ad N. CICLI Una terna pitagorica
DettagliOperatori logici e porte logiche
Operatori logici e porte logiche Operatori unari.......................................... 730 Connettivo AND........................................ 730 Connettivo OR..........................................
DettagliProgetto Lauree Scientifiche Liceo Classico L.Ariosto, Ferrara Dipartimento di Matematica Università di Ferrara 24 Gennaio 2012
Progetto Lauree Scientifiche Liceo Classico L.Ariosto, Ferrara Dipartimento di Matematica Università di Ferrara 24 Gennaio 2012 Concetti importanti da (ri)vedere Programmazione imperativa Strutture di
DettagliIntroduzione al Foglio Elettronico
Microsoft Excel Introduzione al Foglio Elettronico Il Foglio Elettronico Si presenta come una grande tabella su un foglio di carta Le celle contengono differenti dati Numeri Testo Date Ecc I dati possono
DettagliLe 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.
DettagliISTITUTO TECNICO INDUSTRIALE STATALE LA GESTIONE DEI FILE DI TESTO IN C++
ISTITUTO TECNICO INDUSTRIALE STATALE G A L I L E O F E R R A R I S DIISPENSA DII IINFORMATIICA E SIISTEMII AUTOMATIICII LA GESTIONE DEI FILE DI TESTO IN C++ Le classi per la gestione dei file. Il C++ è
DettagliObiettivi dell Analisi Numerica. Avviso. Risoluzione numerica di un modello. Analisi Numerica e Calcolo Scientifico
M. Annunziato, DIPMAT Università di Salerno - Queste note non sono esaustive ai fini del corso p. 3/43 M. Annunziato, DIPMAT Università di Salerno - Queste note non sono esaustive ai fini del corso p.
DettagliIntroduzione 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+ / operatori di confronto (espressioni logiche/predicati) / + 5 3 9 = > < Pseudo codice. Pseudo codice
Pseudo codice Pseudo codice Paolo Bison Fondamenti di Informatica A.A. 2006/07 Università di Padova linguaggio testuale mix di linguaggio naturale ed elementi linguistici con sintassi ben definita e semantica
DettagliProgrammazione 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
DettagliOTTAVA 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
DettagliINTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI
INTRODUZIONE AGLI ALGORITMI Prima di riuscire a scrivere un programma, abbiamo bisogno di conoscere un metodo risolutivo, cioè un metodo che a partire dai dati di ingresso fornisce i risultati attesi.
DettagliGESTIONE INFORMATICA DEI DATI AZIENDALI
GESTIONE INFORMATICA DEI DATI AZIENDALI Alberto ZANONI Centro Vito Volterra Università Tor Vergata Via Columbia 2, 00133 Roma, Italy zanoni@volterra.uniroma2.it Rudimenti di programmazione Programming
DettagliI sistemi di numerazione
I sistemi di numerazione 01-INFORMAZIONE E SUA RAPPRESENTAZIONE Sia dato un insieme finito di caratteri distinti, che chiameremo alfabeto. Utilizzando anche ripetutamente caratteri di un alfabeto, si possono
DettagliUtilizzo 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
DettagliSISTEMI 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
DettagliGestione Risorse Umane Web
La gestione delle risorse umane Gestione Risorse Umane Web Generazione attestati di partecipazione ai corsi di formazione (Versione V03) Premessa... 2 Configurazione del sistema... 3 Estrattore dati...
DettagliEsercizi di programmazione in C
Esercizi di programmazione in C Esercizio 1 Scrivere un programma in linguaggio C che legga da tastiera una sequenza di lunghezza ignota a priori di numeri interi positivi. Il programma, a partire dal
DettagliFogli Elettronici: MS Excel
Fogli Elettronici: MS Excel Informatica - A.A. 2010/2011 - Excel 7.0 Foglio Elettronico Un foglio elettronico (o spreadsheet) è un software applicativo nato dall esigenza di: organizzare insiemi di dati
DettagliJavascript: 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
Dettagli22 Introduzione all uso di MatLab
22 Introduzione all uso di MatLab INTERFACCIA UTENTE E STRINGHE Per visualizzare su schermo il valore di una variabile a senza farla precedere dalla scritta a=, si usa il comando disp (abbreviazione di
DettagliProgrammazione dinamica
Capitolo 6 Programmazione dinamica 6.4 Il problema della distanza di edit tra due stringhe x e y chiede di calcolare il minimo numero di operazioni su singoli caratteri (inserimento, cancellazione e sostituzione)
DettagliLINGUAGGI DI PROGRAMMAZIONE
LINGUAGGI DI PROGRAMMAZIONE Il potere espressivo di un linguaggio è caratterizzato da: quali tipi di dati consente di rappresentare (direttamente o tramite definizione dell utente) quali istruzioni di
DettagliUniversità 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
DettagliLaboratorio 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
DettagliRAPPRESENTAZIONE GRAFICA DEGLI ALGORITMI
RAPPRESENTAZIONE GRAFICA DEGLI ALGORITMI Diagramma di flusso L algoritmo può essere rappresentato in vari modi, grafici o testuali. Uno dei metodi grafici più usati e conosciuti è il cosiddetto diagramma
DettagliStream EDitor (sed) sed NON modifica l'input 2. L'output viene inviato allo standard output e puo' essere rediretto
Sed & Awk Stream EDitor (sed) sed: editor di linea che non richiede l'interazione con l'utente sed può filtrare l'input che riceve da un file o una pipe La sintassi di sed NON definisce un output: L'output
Dettagli1. Le macro in Access 2000/2003
LIBRERIA WEB 1. Le macro in Access 2000/2003 Per creare una macro, si deve aprire l elenco delle macro dalla finestra principale del database: facendo clic su Nuovo, si presenta la griglia che permette
DettagliMatlab: Gestione avanzata dei file
Matlab: Gestione avanzata dei file Informatica B File 2 Contenitori di informazione permanenti Sono memorizzati su memoria di massa Possono continuare ad esistere indipendentemente dalla vita del programma
DettagliAritmetica dei Calcolatori 2
Laboratorio di Architettura 13 aprile 2012 1 Operazioni bit a bit 2 Rappresentazione binaria con segno 3 Esercitazione Operazioni logiche bit a bit AND OR XOR NOT IN OUT A B A AND B 0 0 0 0 1 0 1 0 0 1
DettagliLinguaggio 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
DettagliExcel. 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
DettagliA destra è delimitata dalla barra di scorrimento verticale, mentre in basso troviamo una riga complessa.
La finestra di Excel è molto complessa e al primo posto avvio potrebbe disorientare l utente. Analizziamone i componenti dall alto verso il basso. La prima barra è la barra del titolo, dove troviamo indicato
Dettagli