Errori di programmazione

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Errori di programmazione"

Transcript

1 Errori di programmazione Lo sviluppo di programmi è ovviamente soggetto ad errori da parte del programmatore. Gli errori sono generalmente di due tipi: Errori di sintassi (syntax errors): violazioni della sintassi del linguaggio, ad esempio omettere parentesi, digitare in modo errato una parola chiave. Errori in fase di esecuzione (run-time errors): sono in genere errori nello sviluppo dell algoritmo, ovvero l algoritmo non fa quello che dovrebbe fare. Ad esempio il non aggiornamento di una variabile in un ciclo o la modifica del valore di una variabile che non dovrebbe essere modificata, un calcolo errato etc.

2 Errori di programmazione Gli errori di sintassi vengono individuati e segnalati dall interprete, durante la fase di interpretazione del codice. Gli errori in fase di esecuzione si manifestano di solito attraverso risultati inattesi restituiti da una funzione o attraverso anomalie nell esecuzione di un programma (ad esempio cicli infiniti, terminazioni anomale). Gli errori in fase di esecuzione sono pertanto più difficili da individuare e correggere.

3 Debugging Il debugging è il processo attraverso il quale si individuano e correggono errori in fase di esecuzione all interno di un programma. L ambiente di sviluppo MATLAB fornisce uno strumento, il debugger, che assiste il programmatore nell individuazione e correzione degli errori in fase di esecuzione. Il debugger MATLAB è integrato con l editor predefinito per gli M-file.

4 Debugging Il debugger consente di impostare punti in cui sospendere l esecuzione di un M-file allo scopo di esaminare i valori correnti delle variabili. Tali punti sono chiamati breakpoint I breakpoint possono essere impostati solo in corrispondenza di linee di codice eseguibili contenute in file salvati nella directory corrente o in una directory inclusa tra i path di MATLAB. I breakpoint possono essere impostati nell editor predefinito cliccando a sinistra della linea di codice in corrispondenza della quale si desidera il breakpoint.

5 Debugging Quando l esecuzione di un programma è sospesa si può esaminare il valore corrente delle variabili Ad esempio è possibile esaminare le variabili presenti nel workspace di una funzione Se si riscontrano valori inattesi, ciò significa che nelle linee di codice precedentemente eseguite è presente un errore Se invece tutti i valori sono corretti, si può proseguire con l esecuzione delle linee di codice successive al breakpoint I valori possono essere esaminati per esempio attraverso il Workspace Browser

6 Esecuzione passo-passo E possibile eseguire un programma istruzione per istruzione in modo da esaminarlo nel dettaglio Nel menu Debug dell editor predefinito: Step: esegue la riga corrente di un M-file Step In: esegue la riga corrente di un M-file e, se la linea è una chiamata ad un altra funzione, entra all interno della funzione chiamata Step Out: dopo uno Step In, esegue il resto del codice della funzione chiamata, lascia la funzione chiamata e sospende l esecuzione del programma

7 Esecuzione passo-passo Nel menu Debug dell editor predefinito: Continue: continua l esecuzione di un M-file fino al prossimo breakpoint o al completamento dell esecuzione Go until cursor: continua l esecuzione di un M-file fino alla riga su cui è posizionato il cursore. Nota: occorre salvare le modifiche apportate ad un M-file prima di iniziare il debug. Se si prova ad operare il debug di un file non salvato, MATLAB salva automaticamente il file prima di iniziare il debug.

8 Importazione/Esportazione di Dati In MATLAB si possono importare ed esportare dati in uno dei seguenti tipi di file: -MAT-file (file binari con estensione.mat) -File di testo (dati in formato ASCII) -File di tipo grafico (ad esempio file tiff, gif, jpeg, png) -File audio e video (ad esempio file wav, avi) -Fogli di calcolo (ad esempio file Excel)

9 Esportazione in formato MAT Per esportare dati in formato MAT sintassi: save file_name variables_name >> save test A B oppure save('test', 'A', 'B') Le variabili A e B vengono salvate nel file test.mat >> save work Le variabili nel workspace vengono salvate nel file work.mat

10 Importazione di MATfile load permette di caricare file.mat precedentemente salvati >> load test carica il file test.mat >> load work

11 Esportazione in formato testo Per esportare dati in formato testo (codifica ASCII) si può usare il comando save con l opzione -ASCII. Sintassi: save file_name variable_name -ASCII Esempio: >> save test.txt A -ASCII Nel file test.txt troveremo gli elementi dell'oggetto A separati da spazi. Nel caso si voglia usare la tabulazione si può aggiungere l opzione -tabs >> save test.txt A -ASCII -tabs La funzione dlmwrite consente di impostare qualsivoglia carattere separatore, passandolo come parametro alla funzione stessa. >> dlmwrite( test.txt, A, ; );

12 Importazione da file di testo Se i dati sono numerici, sono contenuti in un file di testo (la cui estensione tipica è.txt) e sono separati da spazi vuoti o tab, è possibile caricarli in MATLAB attraverso il comando load, utilizzandolo nel modo seguente: load percorso_del_file (si provi) MATLAB salva i dati in una matrice avente lo stesso nome del file. È poi possibile ridenominare la matrice come una qualsiasi altra matrice. dlmread permette di leggere file di testo specificando in input il separatore >> dlmwrite('test.txt', A, ';'); >> dlmread('test.txt',';') NOTA: usate dmlread solo su file creati con dlmwrite, altrimenti potreste riscontrare problemi sui delimitatori

13 Importazione da file di testo Un'altra funzione, utile anche per altre tipologie di dati in formato testo è importdata (non crea variabili col nome del file) >> a=importdata('stringhe.txt') a = 'stringa1' 'stringa2' 'stringa3' >> a(1) ans = 'stringa1' Si adatta ai dati meglio del comando load. Provate load stringhe.txt

14 Esempi >> B=[1:2:11; 2:7; 1:6] >> save frommat.txt B -ASCII >> save frommat.txt B -ASCII -tabs >> save ('frommattab.txt', 'B', '-ASCII', '-tabs') >> load frommat.txt >> load frommattab.txt >> dlmwrite('frommatdot.txt', B, ';'); % niente apici per le variabili >> dlmread('frommatdot.txt', ';') ans =

15 Import Wizard Oltre alla funzione load e ad altre funzioni simili, MATLAB mette a disposizione uno strumento, Import Wizard, per l importazione di dati. Usando Import Wizard spesso non è necessario imporre o conoscere il formato esatto dei dati, in quanto questo viene generalmente rilevato dal Wizard stesso. Import Wizard si lancia dal menu File nel menu principale di MATLAB: File -> Import Data. Dopo averlo lanciato è sufficiente specificare quale sia il carattere separatore per i dati e se il file abbia una intestazione (header) Il Wizard genera una preview dei dati da importare.

16 Import Wizard Attenzione: se il workspace base contiene già una variabile avente lo stesso nome del file da importare, il suo contenuto andrà perduto

17 Insertion Sort InsertionSort (Array A) 1. for i = 2 to length(a) do 2. v A[i] 3. j i while j >= 1 and A[j] > v do 5. A[j + 1] A[j] 6. j j end while 8. A[j + 1] v 9. end for 10.return A j = 1 Linea 6 Linea Linea 8 v j = Linea 5 v = 2 j = 2 A[j] < v j = 0 v Linea 6 i= Linea 8 v = Linea 5 j = 1 v = Linea 5 i=3 A[j] < v i=4

18 Insertion Sort: quante operazioni InsertionSort(Array A) 1. for i = 2 to length(a) do 2. v A[i] 3. j i while j >= 1 and A[j] > v do 5. A[j + 1] A[j] 6. j j end while 8. A[j + 1] v 9. end for 10.return A n = length(a) Costo Ripetizioni 1 n-1 1 n-1 1 2*m? 1 m 1 m 1 n T(n,m) = 3*(n-1) + 4*m - Quanto vale m?

19 Insertion Sort Caso peggiore: quanto vale m? m = 1 quando i = 2, m = 2 quando i = 3,..., m = n - 1 quando i = n Il ciclo while viene eseguito n 1 i=n (n 1)/2= n2 i=1 2 n 2 volte. T n =3 n 1 4 n2 2 n 2 =2n2 n 3 E nel caso migliore? Qual è la classe di complessità di T(n)?

20 Esercizi 3.1.Scrivere un algoritmo di ordinamento, detto minsort, Che ordina gli elementi di un vettore di taglia n calcolando, ad ogni passo 'i', partendo da i=1, il minimo nel sotto vettore di indici i:n e scambiandolo con l'elemento di posizione i 1) provare l'algoritmo per vettori casuali di taglia diversa e memorizzarne i tempi di esecuzione 2) scrivere la funzione di complessità dell'algoritmo in funzione della taglia dell'input 3.2. Scrivere una funzione che presa in input una matrice, ne calcola il minimo e il massimo.

21 Esercizi 3.3. Ripetere i passi 1) e 2) dell'esercizio 3.1 con l'algoritmo Insertion Sort e confrontare le due funzioni di complessità nel caso peggiore e nel caso migliore - confrontare i due algoritmi su vettori casuali di taglia variabile 3.4. Scrivere uno script che legge dal file numeri.txt dei valori, li ordina e scrive nel file ordinati.txt la sequenza ordinata in ordine decrescente Scrivere una funzione che riceve come input il nome di un file, legge da tale file un un numero n, genera un vettore distribuito normalmente con media e deviazione standard a piacere, lo ordina e scrive nel file ordinati.txt la sequenza ordinata in ordine decrescente

Errori di programmazione Università degli Studi di Milano

Errori di programmazione Università degli Studi di Milano Errori di programmazione Lo sviluppo di programmi è ovviamente soggetto ad errori da parte del programmatore. Gli errori sono generalmente di due tipi: Errori di sintassi (syntax errors): violazioni della

Dettagli

MATLAB I/O. Informatica B - A.A. 2012/2013 ACQUISIZIONE DI INPUT DA TASTIERA

MATLAB I/O. Informatica B - A.A. 2012/2013 ACQUISIZIONE DI INPUT DA TASTIERA MATLAB I/O Informatica B - A.A. 2012/2013 ACQUISIZIONE DI INPUT DA TASTIERA Funzione input valore = input( inserisci un valore ); Matlab stampa a video la stringa inserisci un valore ed aspetta di ricevere

Dettagli

Cosa sono gli Script (m-file) Script Semplici programmi. Fino ad ora, i comandi sono stati sempre digitati nella command window:

Cosa sono gli Script (m-file) Script Semplici programmi. Fino ad ora, i comandi sono stati sempre digitati nella command window: Script Semplici programmi Cosa sono gli Script (m-file) Fino ad ora, i comandi sono stati sempre digitati nella command window: Eseguiti premendo enter Modificati utilizzando le frecce o la command history

Dettagli

DIPARTIMENTO DI ELETTRONICA, INFORMAZIONE E BIOIGNEGNERIA. INFORMATICA B Ingegneria Elettrica. Script in Matlab

DIPARTIMENTO DI ELETTRONICA, INFORMAZIONE E BIOIGNEGNERIA. INFORMATICA B Ingegneria Elettrica. Script in Matlab DIPARTIMENTO DI ELETTRONICA, INFORMAZIONE E BIOIGNEGNERIA INFORMATICA B Ingegneria Elettrica Script in Matlab Gli script Uno script è un file di testo contenente una sequenza di comandi MATLAB (è un programma

Dettagli

Indice Capitolo 1 Capitolo 2 Capitolo 3 Capitolo 4 Capitolo 5 Capitolo 6

Indice Capitolo 1 Capitolo 2 Capitolo 3 Capitolo 4 Capitolo 5 Capitolo 6 1 Indice Capitolo 1... 7 Introduzione al Problem Solving... 7 Computer... 11 Informatica... 13 Capitolo 2... 17 Rappresentazione e Algoritmi... 17 Un esempio di algoritmo... 19 Diagrammi di flusso... 22

Dettagli

PON Liceo Scientifico Leonardo da Vinci. Vallo della Lucania

PON Liceo Scientifico Leonardo da Vinci. Vallo della Lucania PON 2007 2013 Liceo Scientifico Leonardo da Vinci Vallo della Lucania Nuovi percorsi matematici: Osservare, descrivere, costruire. Matlab - 3: Operazioni su matrici Vallo della Lucania 26 Settembre 2008

Dettagli

2 Lavorare con Eclipse

2 Lavorare con Eclipse Corso Eclipse 2 Lavorare con Eclipse 1 Prerequisiti Conoscenza elementare ambiente Eclipse Compilare ed eseguire semplici applicazioni Java Conoscere i tipici errori di programmazione Individuare errori

Dettagli

Script in Matlab. INFORMATICA B + C (sezione L-Z) Ingegneria Elettrica, Chimica e dei Materiali

Script in Matlab. INFORMATICA B + C (sezione L-Z) Ingegneria Elettrica, Chimica e dei Materiali DIPARTIMENTO DI ELETTRONICA, INFORMAZIONE E BIOIGNEGNERIA INFORMATICA B + C (sezione L-Z) Ingegneria Elettrica, Chimica e dei Materiali Script in Matlab Gli script Uno script è un file di testo contenente

Dettagli

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE. Input/output. Marco D. Santambrogio Ver. aggiornata al 24 Agosto 2015

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE. Input/output. Marco D. Santambrogio Ver. aggiornata al 24 Agosto 2015 Input/output Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 24 Agosto 2015 1 Obiettivi Input/Output 2 Acquisizione dati da tastiera Funzione input valore = input( inserisci un valore

Dettagli

A.A. 2018/2019. Fondamenti di Programmazione in MATLAB FONDAMENTI DI INFORMATICA E PROGRAMMAZIONE. Docente Prof. Raffaele Pizzolante

A.A. 2018/2019. Fondamenti di Programmazione in MATLAB FONDAMENTI DI INFORMATICA E PROGRAMMAZIONE. Docente Prof. Raffaele Pizzolante A.A. 2018/2019 Fondamenti di Programmazione in MATLAB Strutturazione del Codice Sorgente Docente Prof. Raffaele Pizzolante FONDAMENTI DI INFORMATICA E PROGRAMMAZIONE Fondamenti di Programmazione in MATLAB:

Dettagli

RICONOSCIMENTO DI FORME A.A OBIETTIVI PARTE 1 INTRODUZIONE A MATLAB

RICONOSCIMENTO DI FORME A.A OBIETTIVI PARTE 1 INTRODUZIONE A MATLAB RICONOSCIMENTO DI FORME A.A. 2006-2007 PARTE 1 OBIETTIVI Implementare semplici algoritmi di Pattern Recognition utilizzando l ambiente Matlab Svolgere esperimenti di classificazione utilizzando gli algoritmi

Dettagli

File binari e file di testo

File binari e file di testo I file File binari e file di testo distinzione tra file binari file di testo si possono usare funzioni diverse per la gestione di tipi di file diversi Programmazione Gestione dei file 2 File binari e file

Dettagli

Fondamenti di Informatica

Fondamenti di Informatica Fondamenti di Informatica G e stione d e i file in MATLAB P r o f. R a f f a e l e P i z zo l a n t e A. A. 2 0 1 6 / 1 7 OUTLINE Caratteristiche dei File Apertura/Chiusura File Scrittura/Lettura File

Dettagli

Fondamenti di Informatica A. A / 1 9

Fondamenti di Informatica A. A / 1 9 Fondamenti di Informatica Prof. Marco Lombardi A. A. 2 0 1 8 / 1 9 : OUTLINE Caratteristiche Come si presenta Inserimento dei Comandi Variabili Operatori e Precedenza degli Operatori Workspace e Sessione

Dettagli

Fondamenti di informatica T-1 (A K) Esercitazione 6: Eclipse

Fondamenti di informatica T-1 (A K) Esercitazione 6: Eclipse Fondamenti di informatica T-1 (A K) Esercitazione 6: Eclipse AA 2018/2019 Tutor lorenzo.rosa@unibo.it 2 Esercitazione 6 Introduzione al calcolatore e Java Linguaggio Java, basi e controllo del flusso Eclipse

Dettagli

Laboratorio di INFORMATICA. 15 ottobre 2009

Laboratorio di INFORMATICA. 15 ottobre 2009 Laboratorio di INFORMATICA 15 ottobre 2009 GRAFICI Per ottenere il grafico di una funzione, devo: Preparare un vettore di ascisse Preparare un vettore di ordinate Scegliere la figura (opzionale)(istruzione

Dettagli

Fondamenti di Informatica

Fondamenti di Informatica Fondamenti di Informatica (La Ricorsione e Debugging) Prof. Christian Esposito Corso di Laurea in Ingegneria Meccanica e Gestionale (Classe I) A.A. 2017/18 OUTLINE La ricorsione - Principi base Caso Studio

Dettagli

Introduzione al MATLAB c Parte 3 Script e function

Introduzione al MATLAB c Parte 3 Script e function Introduzione al MATLAB c Parte 3 Script e function Lucia Gastaldi DICATAM - Sezione di Matematica, http://lucia-gastaldi.unibs.it Indice 1 M-file di tipo Script e Function Script Function 2 Gestione dell

Dettagli

Introduzione al MATLAB c Parte 3 Script e function

Introduzione al MATLAB c Parte 3 Script e function Introduzione al MATLAB c Parte 3 Script e function Lucia Gastaldi DICATAM - Sezione di Matematica, http://lucia-gastaldi.unibs.it Indice 1 M-file di tipo Script e Function Script Function 2 Gestione dell

Dettagli

Introduzione al MATLAB c Parte 3 Script e function

Introduzione al MATLAB c Parte 3 Script e function Introduzione al MATLAB c Parte 3 Script e function Lucia Gastaldi DICATAM - Sezione di Matematica, http://www.ing.unibs.it/gastaldi/ Indice 1 M-file di tipo Script e Function Script Function 2 Gestione

Dettagli

Corso Matlab : Terza lezione (Esercitazione, 17/05/13) Samuela Persia, Ing. PhD.

Corso Matlab : Terza lezione (Esercitazione, 17/05/13) Samuela Persia, Ing. PhD. Advanced level Corso Matlab : Terza lezione (Esercitazione, 17/05/13) Samuela Persia, Ing. PhD. Sommario Richiami Teoria Cenni File script Grafici Acquisizione dati esterni Esercizi: Utilizzo degli script

Dettagli

Programmare. Condizioni logiche. Condizioni Logiche Costrutti Decisionali Costrutti di Ciclo

Programmare. Condizioni logiche. Condizioni Logiche Costrutti Decisionali Costrutti di Ciclo Programmare Condizioni Logiche Costrutti Decisionali Costrutti di Ciclo Condizioni logiche Le condizioni logiche sono istruzioni che fanno uso di: operatori relazionali (servono a confrontare il valore

Dettagli

ISTRUZIONI DEVC++ Autore: Luca Florio (luca.florio<at>polimi.it)

ISTRUZIONI DEVC++ Autore: Luca Florio (luca.florio<at>polimi.it) ISTRUZIONI DEVC++ Autore: Luca Florio (luca.floriopolimi.it) DevC++ è un ambiente di programmazione scaricabile gratuitamente che fornisce funzionalità per la creazione di applicativi in linguaggio

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/ 24 settembre 2007 Outline 1 M-file di tipo Script e Function Script Function 2 Elementi di programmazione

Dettagli

L utility Unix awk [Aho-Weinberger-Kernighan]

L 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ù

Dettagli

Università degli Studi di Ferrara

Università degli Studi di Ferrara Università degli Studi di Ferrara Corso di Laurea in Matematica - A.A. 2017-2018 Programmazione Lezione 21 Input Output Docente: Michele Ferrari - michele.ferrari@unife.it Nelle lezioni precedenti Operatori

Dettagli

FUNZIONI. Ivan Lanese

FUNZIONI. Ivan Lanese FUNZIONI Ivan Lanese Argomenti Tecniche di debugging Funzioni Di solito i programmi non funzionano int main() { int n, prod = 1; do { cout > n; prod = prod

Dettagli

MATLAB c. Lucia Gastaldi Dipartimento di Matematica Lezione 4 (15 ottobre 2003)

MATLAB c. Lucia Gastaldi Dipartimento di Matematica  Lezione 4 (15 ottobre 2003) MATLAB c M-file. Lucia Gastaldi Dipartimento di Matematica http://dm.ing.unibs.it/gastaldi/ Lezione 4 (15 ottobre 2003) Esercizio Problema 3: la successione di funzioni f n (x) = (x 2 x) n per 0 x 1 è

Dettagli

Matlab: Script e Funzioni

Matlab: Script e Funzioni Matlab: Script e Funzioni Informatica B Script Cos è uno script (m-file) q Uno script è un file di testo contenente una sequenza di comandi MATLAB non deve contenere caratteri di formattazione (solo testo

Dettagli

Metodi di Analisi dei Dati Sperimentali. AA 2009/2010 Pier Luca Maffettone. Elementi di Matlab

Metodi di Analisi dei Dati Sperimentali. AA 2009/2010 Pier Luca Maffettone. Elementi di Matlab Metodi di Analisi dei Dati Sperimentali AA /2010 Pier Luca Maffettone Elementi di Matlab Sommario Introduzione Variabili Manipolazione di elementi Creazione di vettori/matrici Operazioni elementari Funzioni

Dettagli

Informatica Applicata al Suono Tutorial Matlab

Informatica Applicata al Suono Tutorial Matlab Prof. Mario Malcangi malcangi@di.unimi.it MATLAB è un linguaggio di alto livello e un ambiente interattivo per il calcolo numerico, l'analisi e la visualizzazione dei dati e la programmazione. MATLAB consente

Dettagli

UD4 - MATLAB. M-file. Efficienza degli algoritmi. Formati d uscita

UD4 - MATLAB. M-file. Efficienza degli algoritmi. Formati d uscita UD4 - MATLAB M-file. Efficienza degli algoritmi. Formati d uscita M-files In MatLab è possibile eseguire istruzioni contenute in file esterni; Tali file sono chiamati M-file perché devono avere estensione.m

Dettagli

FONDAMENTI DI INFORMATICA

FONDAMENTI DI INFORMATICA FONDAMENTI DI INFORMATICA Prof. Alfredo Accattatis Slide (rielaborate) del prof. Emiliano Casalicchio accattatis@ing.uniroma2.it Esercizio (1) Dati due vettori V1 e V2 scrivere un algoritmo che permetta

Dettagli

Operatori relazionali

Operatori relazionali Operatori relazionali Gli operatori relazionali più comuni sono: == uguale ~= diverso da < minore di > x=2; >> x==0 ans = 0 >> x==2 ans = 1 (questa relazione e falsa:)

Dettagli

DEBUGGING. Ivan Lanese

DEBUGGING. Ivan Lanese DEBUGGING Ivan Lanese Argomenti Tecniche di debugging Di solito i programmi non funzionano int main() { int n, prod = 1; do { cout > n; prod = prod * n; }

Dettagli

Data Import pulizia dati e Probabilità. Renato Mainetti

Data Import pulizia dati e Probabilità. Renato Mainetti Data Import pulizia dati e Probabilità Renato Mainetti Importare dati in Matlab: Abbiamo visto come sia possibile generare array e matrici di dati. Per ora abbiamo sempre inserito i dati manualmente o

Dettagli

Università degli Studi di Ferrara

Università degli Studi di Ferrara Università degli Studi di Ferrara Corso di Laurea in Matematica - A.A. 2018 2019 Programmazione Lezione 24 Correzione Simulazione Docente: Michele Ferrari - michele.ferrari@unife.it In questa lezione Correzione

Dettagli

>> A = [1 2 3; 4 5 6; 7 8 9]; >> A

>> A = [1 2 3; 4 5 6; 7 8 9]; >> A Creazione di matrici Delimititatore di riga Delimititatore di matrice >> A = [1 2 3; 4 5 6; 7 8 9]; >> A = [... 1 2 3 4 5 6 7 8 9 ]; Entrambi i comandi creano la stessa matrice 3x3 Accedere agli elementi

Dettagli

Calcolo numerico e programmazione Programmazione

Calcolo numerico e programmazione Programmazione Calcolo numerico e programmazione Programmazione Tullio Facchinetti 11 maggio 2012 14:05 http://robot.unipv.it/toolleeo La programmazione la programmazione è l insieme delle

Dettagli

Fondamenti di Informatica

Fondamenti di Informatica Fondamenti di Informatica Gestione dei File in MATLAB Prof. Christian Esposito Corso di Laurea in Ingegneria Meccanica e Gestionale (Classe I) A.A. 2016/17 Gestione dei file in MATLAB OUTLINE Caratteristiche

Dettagli

Introduzione all ambiente MATLAB. Richiami II. Analisi Numerica - A.A. 2007/08

Introduzione all ambiente MATLAB. Richiami II. Analisi Numerica - A.A. 2007/08 Introduzione all ambiente MATLAB Richiami II Programmazione MATLAB MATLAB non è un vero e proprio linguaggio di programmazione, ma permette comunque di realizzare programmi utilizzando le classiche strutture

Dettagli

Esercitazioni di MatLab

Esercitazioni di MatLab 1 / 33 Esercitazioni di MatLab Supporto alla didattica - Lezione 1 Serena Crisci Università di Ferrara - Dip. di Matematica e Informatica e-mail: serena.crisci@unife.it A.A. 2017/18 2 / 33 Sommario 1 Introduzione

Dettagli

Calcolo Numerico A.A Esercitazione n

Calcolo Numerico A.A Esercitazione n Calcolo Numerico A.A. 2012-2013 Esercitazione n. 3 19-03-2013 1 Informazione http://www.softpedia.com/progdownload/gui-octave-download- 180957.html Files.m Al posto di eseguire i comandi direttamente da

Dettagli

Unix e comandi di base

Unix e comandi di base Fondamenti di Informatica e Laboratorio T-AB Ingegneria Elettronica e Telecomunicazioni Unix e comandi di base Lab19 1 Unix - Shell dei comandi Es. 1 Utilizzando il comando ls Elencare a video il contenuto

Dettagli

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

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

Dettagli

Parte 2 Tutorial Cenni di programmazione

Parte 2 Tutorial Cenni di programmazione Parte 2 Tutorial Cenni di programmazione Sommario Programmazione in Matlab - Introduzione Creazione e gestione degli m-files Esercizi 1 Programmazione in Matlab - Introduzione Si possono distinguere tre

Dettagli

Data Import e Probabilità. Renato Mainetti

Data Import e Probabilità. Renato Mainetti Data Import e Probabilità Renato Mainetti Importare dati in Matlab: Abbiamo visto come sia possibile generare array e matrici di dati. Per ora abbiamo sempre inserito i dati manualmente o utilizzando metodi

Dettagli

DEBUGGING. Ivan Lanese

DEBUGGING. Ivan Lanese DEBUGGING Ivan Lanese Argomenti Tecniche di debugging Di solito i programmi non funzionano int main() { int n, prod = 1; do { cout > n; prod = prod * n; }

Dettagli

Primi script in MATLAB

Primi script in MATLAB Primi script in MATLAB Laboratorio di Calcolo Numerico 6 Marzo 2018 Introduzione alla programmazione Obiettivo: scrivere programmi e sviluppare algoritmi in MATLAB Si utilizzano gli m-file, ovvero file

Dettagli

Laboratorio - Programmazione

Laboratorio - Programmazione Laboratorio - Programmazione Angelo Di Iorio angelo.diiorio@unibo.it Progetto L obiettivo del progetto è realizzare un applicazione PHP da linea di comando che raccoglie dati sui terremoti avvenuti in

Dettagli

Fondamenti di Informatica, A.A FILA A

Fondamenti di Informatica, A.A FILA A Fondamenti di Informatica, A.A. 2014-2015 - FILA A 08/07/2015 Esercizio 1 È dato il frammento di codice Matlab v = [ 1 1 2 3 ] ; n = length ( v ) ; for x = v (: 2:1) v = [ v mod(sum( v ), n ) ] ; n = length

Dettagli

Fondamenti di Informatica

Fondamenti di Informatica Fondamenti di Informatica Prof. Arcangelo Castiglione A.A. 2016/17 Debugging 1/7 Il debugging (o semplicemente debug) è l'attività che permette al programmatore di individuare la porzione di programma

Dettagli

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

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

Dettagli

Fondamenti di Informatica

Fondamenti di Informatica Fondamenti di Informatica Introduzione a MATLAB Prof. Christian Esposito Corso di Laurea in Ingegneria Meccanica e Gestionale (Classe I) A.A. 2016/17 Introduzione a MATLAB Avviso per le Prossime Lezioni

Dettagli

I fogli elettronici. Capitolo 12 Fluency Conoscere e usare l informatica

I fogli elettronici. Capitolo 12 Fluency Conoscere e usare l informatica I fogli elettronici Capitolo 12 Fluency Conoscere e usare l informatica Coordinate delle celle Colonne sono etichettate con le lettere Righe sono etichettate con i numeri Riferimenti un intera colonna:

Dettagli

Elementi Elem d enti i d I i nf I orm nf a orm tic a a tic a e Applicazioni Numeriche T I File in Octave

Elementi Elem d enti i d I i nf I orm nf a orm tic a a tic a e Applicazioni Numeriche T I File in Octave Elementi di Informatica e Applicazioni Numeriche T I File in Octave Octave ed il File System Come ogni altro programma: Quando Octave viene eseguito......viene associato ad una directory del File System

Dettagli

Fondamenti di Informatica AA 2016/2017

Fondamenti di Informatica AA 2016/2017 Fondamenti di Informatica AA 2016/2017 Eng. Ph.D. Michela Paolucci DISIT Lab http://www.disit.dinfo.unifi.it Department of Information Engineering, DINFO University of Florence Via S. Marta 3, 50139, Firenze,

Dettagli

Lab. di Sistemi Operativi - Esercitazione n 2- - comando di ricerca: grep -

Lab. di Sistemi Operativi - Esercitazione n 2- - comando di ricerca: grep - Lab. di Sistemi Operativi - Esercitazione n 2- - comando di ricerca: grep - 1 Ricordiamo che Le righe di /etc/passwd si presentano nella seguente forma: Username:Password:UserID:GroupID:Info:HomeDirectory:Shell

Dettagli

1) Matlab e simulazione. 2) Esempi di utilizzo. Mauro De Sanctis corso di Informazione e Codifica Università di Roma Tor Vergata

1) Matlab e simulazione. 2) Esempi di utilizzo. Mauro De Sanctis corso di Informazione e Codifica Università di Roma Tor Vergata Argomenti della Lezione 1) Matlab e simulazione 2) Esempi di utilizzo 1 Mauro De Sanctis corso di Informazione e Codifica Università di Roma Tor Vergata Matlab è un sistema di programmazione ad alto livello

Dettagli

Calcolo Numerico A.A Lab n

Calcolo Numerico A.A Lab n Calcolo Numerico A.A. 2014-2015 Lab n. 3 29-10-2014 Elementi di programmazione Programmare in MATLAB Alcune strutture di programmazione elementari Operatori relazionali: =, ==, = Operatori logici:

Dettagli

Lezione 25: File Mercoledì 18 Novembre 2009

Lezione 25: File Mercoledì 18 Novembre 2009 Università di Salerno Corso di FONDAMENTI DI INFORMATICA Corso di Laurea Ingegneria Meccanica & Ingegneria Gestionale Mat. Pari Docente : Ing. Secondulfo Giovanni Anno Accademico 2009-2010 Lezione 25:

Dettagli

Algoritmo di ordinamento sul posto che ha tempo di esecuzione :

Algoritmo di ordinamento sul posto che ha tempo di esecuzione : QuickSort Algoritmo di ordinamento sul posto che ha tempo di esecuzione : - O(n 2 ) nel caso peggiore - O(n log n) nel caso medio Nonostante le cattive prestazioni nel caso peggiore, rimane il miglior

Dettagli

Metodi numerici con elementi di Programmazione A.A

Metodi numerici con elementi di Programmazione A.A Metodi numerici con elementi di Programmazione A.A. 2013-2014 Introduzione al MatLab VI parte 1 Docente: Vittoria Bruni Email: vittoria.bruni@sbai.uniroma1.it Ufficio: Via A. Scarpa, Pal. B, I piano, Stanza

Dettagli

Laboratorio di Matlab

Laboratorio di Matlab Laboratorio di Matlab Alessandro Formaglio Dipartimento di Ingegneria dell Informazione, Università di Siena alex@dii.unisi.it http://www.dii.unisi.it/ control/matlab/labmatlab.html 9 Luglio 2009 DII -

Dettagli

FASE 1: ISTRUZIONI PER ESPORTARE GLI ALUNNI DAL SIDI

FASE 1: ISTRUZIONI PER ESPORTARE GLI ALUNNI DAL SIDI FASE 1: ISTRUZIONI PER ESPORTARE GLI ALUNNI DAL SIDI 1) Sul desktop del proprio computer, creare una nuova cartella chiamata alunni-nomeistitutosidi-xls, dove, al posto di nomeistituto, si deve scrivere

Dettagli

INTRODUZIONE A VISUAL STUDIO

INTRODUZIONE A VISUAL STUDIO INTRODUZIONE A VISUAL STUDIO Cosa è Visual Studio Visual Studio è un ambiente di sviluppo integrato (Integrated development environment o IDE) Sviluppato da Microsoft Supporta numerosi linguaggi C, C++,

Dettagli

Iniziare a programmare in C++

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

Dettagli

Octave. Luca Abeni. Informatica Luca Abeni 1 / 21

Octave. Luca Abeni. Informatica Luca Abeni 1 / 21 Luca Abeni Informatica Luca Abeni 1 / 21 Linguaggi di Programmazione di Alto Livello Parole chiave: possibilmente con significato in inglese Ma agli informatici piacciono molto contrazioni e acronimi...

Dettagli

Tutorial su Codelite. Luca Ceriani 2011 Federico Cerutti

Tutorial su Codelite. Luca Ceriani 2011 Federico Cerutti Tutorial su Codelite Luca Ceriani 2011 Federico Cerutti Sommario Creare un nuovo workspace Creare un primo progetto all interno di un workspace

Dettagli

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

A.A Laboratorio n 1 Ing. Gian Enrico Conti. Milano, XX mese 20XX Informatica Titolo ed Elementi presentazione di Informatica Medica sottotitolo A.A. 2018-19 Laboratorio n 1 Ing. Gian Enrico Conti Milano, XX mese 20XX Info Logistiche Contatti: gianenrico.conti@mail.polimi.it

Dettagli

MATRICI (ARRAY) IN MATLAB/OCTAVE

MATRICI (ARRAY) IN MATLAB/OCTAVE MATRICI (ARRAY) IN MATLAB/OCTAVE MANOLO VENTURIN UNIVERSITÀ DEGLI STUDI DI PADOVA DIP. DI MATEMATICA PURA ED APPLICATA A. A. 2007/2008 INDICE Cosa sono Esempio Operazioni sulle matrici Importare matrici

Dettagli

Rappresentazione degli algoritmi

Rappresentazione degli algoritmi Rappresentazione degli algoritmi Universitá di Ferrara Ultima Modifica: 21 ottobre 2014 1 1 Diagramma di flusso Utilizzare il diagramma di flusso per rappresentare gli algoritmi che risolvono i seguenti

Dettagli

Lab 01 Introduzione a Codelite

Lab 01 Introduzione a Codelite Fondamenti di Informatica e Laboratorio T-AB e Fondamenti di Informatica T1 Ingegneria Elettronica e Telecomunicazioni e Ingegneria dell Automazione a.a. 2011/2012 Lab 01 Introduzione a Codelite Lab01

Dettagli

Introduzione a MATLAB

Introduzione a MATLAB Università degli Studi di Napoli Federico II CdL Ing. Elettrica Corso di Laboratorio di Circuiti Elettrici Introduzione a MATLAB Lezione n.2 Dr. Carlo Petrarca Dipartimento di Ingegneria Elettrica e Tecnologie

Dettagli

Corso di Laboratorio di Sistemi Operativi

Corso di Laboratorio di Sistemi Operativi Corso di Laboratorio di Sistemi Operativi Lezione 4 Alessandro Dal Palù email: alessandro.dalpalu@unipr.it web: www.unipr.it/~dalpalu Approfondimento su make http://http://capone.mtsu.edu/csdept/facilitiesandresources/make.htm

Dettagli

Dinamica e Controllo dei Processi Energetici. AA 2009/2010 Pier Luca Maffettone. Elementi di Matlab

Dinamica e Controllo dei Processi Energetici. AA 2009/2010 Pier Luca Maffettone. Elementi di Matlab Dinamica e Controllo dei Processi Energetici AA 2009/ Pier Luca Maffettone Elementi di Sommario Introduzione Variabili Manipolazione di elementi Creazione di vettori/matrici Operazioni elementari Funzioni

Dettagli

1. NOZIONI DI BASE. 1.1 Introduzione

1. NOZIONI DI BASE. 1.1 Introduzione 1. NOZIONI DI BASE 1.1 Introduzione Il SAS, acronimo per Statistical Analysis System, è uno dei software più utilizzati per condurre analisi di vario genere, che vanno dal calcolo di semplici statistiche

Dettagli

Input/Output. Console e File.

Input/Output. Console e File. Input/Output Console e File http://www.dia.uniroma3.it/~roselli/ roselli@dia.uniroma3.it Credits Materiale a cura del Prof. Franco Milicchio Introduzione Le istruzioni di stampa servono a rendere visibili

Dettagli

Laboratorio di informatica Ingegneria meccanica

Laboratorio di informatica Ingegneria meccanica Laboratorio di informatica Ingegneria meccanica Esercitazione 6 7 novembre 2007 Correzione di un programma Un programma può contenere errori sintattici e/o errori logici. Gli errori sintattici vengono

Dettagli

Debug di un programma

Debug di un programma Debug di un programma Col termine Debug si intende una fase di sviluppo del software, nella quale si cerca di eliminare gli errori dal programma Due tipi di errori: Errori sintattici, rilevati sempre dal

Dettagli

Gestione dei files in linguaggio C. Fondamenti

Gestione dei files in linguaggio C. Fondamenti Programmazione e Laboratorio di Programmazione Gestione dei files in linguaggio C Fondamenti 1 Che cosa è un file? Un file può essere visto come un contenitore di informazioni simile ad un vettore di bytes

Dettagli

Programmazione Matlab

Programmazione Matlab MatLab Lezione 2 Programmazione Matlab MATLAB vs. C++ File sorgente C++: sono trasformati in linguaggio macchina dal compilatore; MATLAB: sono interpretati; Tipi di dato C++: è necessario specificare il

Dettagli

Lezione 22: Funzioni e File Giovedì 18 Novembre 2010

Lezione 22: Funzioni e File Giovedì 18 Novembre 2010 Università di Salerno Corso di FONDAMENTI DI INFORMATICA Corso di Laurea Ingegneria Corso B Docente : Ing. Anno Accademico 2010-2011 Lezione 22: Funzioni e File Giovedì 18 Novembre 2010 exp(x): calcolo

Dettagli

Introduzione a Linux Lezione 7 Programmare in Linux

Introduzione a Linux Lezione 7 Programmare in Linux Introduzione a Linux Lezione 7 Programmare in Linux Angelo Genovese Corso di Sistemi Operativi I/II Prof. V. Piuri Università degli Studi di Milano Dipartimento di Informatica A.A. 2018/2019 2018 2015

Dettagli

CORSO DI LABORATORIO DI INFORMATICA

CORSO DI LABORATORIO DI INFORMATICA CORSO DI LABORATORIO DI INFORMATICA Corso di Laurea Triennale in Ingegneria Elettrica a.a. 2015/2016 Docente: Ing. Domenico Amalfitano Dipartimento di Ingegneria Elettrica e delle Tecnologie dell Informazione

Dettagli

Script e Funzioni in Matlab pre-2016b

Script e Funzioni in Matlab pre-2016b Elementi di Informatica e Applicazioni Numeriche T Script e Funzioni in Matlab pre-2016b Limitazioni di Matlab pre-2016b Matlab pre-2016b non permette di definire funzioni in script A però volte una funzione

Dettagli

PER UTILIZZARE LCC IN LAB

PER UTILIZZARE LCC IN LAB PER UTILIZZARE LCC IN LAB La prima volta che un utente utilizza lcc-win32 deve impostare una chiave nel registro utente. Per fare questo occorre semplicemente: Aprire con il gestione risorse la cartella

Dettagli

Esercitazioni di Fondamenti Informatica - Modulo A 1

Esercitazioni di Fondamenti Informatica - Modulo A 1 Esercitazioni di Fondamenti Informatica - Modulo A 1 Raccolta requisiti Progettazione Implementazione Errori Sintattici Errori Semantici CICLO DI VITA DEL SOFTWARE Debug Test Trasferimento Assistenza Ammodernamento

Dettagli

Algoritmi stabili e instabili

Algoritmi stabili e instabili Algoritmi stabili e instabili Laboratorio di Calcolo Numerico 13 Marzo 2018 Vettori in MATLAB Finora abbiamo pensato alle variabili utilizzate come semplici valori numerici (variabili scalari). In realtà,

Dettagli

# Importazione da file esterni - informazioni generali

# Importazione da file esterni - informazioni generali Suite contabile fiscale #3759 - Importazione da file esterni - informazioni generali Premesse Specifiche tecniche per la compilazione del file - come leggerle Principali avvertenze generali di compilazione

Dettagli

MATLAB-UD5. Array di strutture. File.

MATLAB-UD5. Array di strutture. File. MATLAB-UD5 Array di strutture. File. Strutture Un vettore è una struttura di dati dello stesso tipo (numerico oppure carattere/stringa); Una struttura è una struttura di dati di tipo diverso; Una struttura

Dettagli

liceo B. Russell PROGRAMMAZIONE INDIRIZZO: SCIENTIFICO SCIENZE APPLICATE BIENNIO: SECONDA DISCIPLINA: INFORMATICA

liceo B. Russell PROGRAMMAZIONE INDIRIZZO: SCIENTIFICO SCIENZE APPLICATE BIENNIO: SECONDA DISCIPLINA: INFORMATICA INDIRIZZO: SCIENTIFICO SCIENZE APPLICATE PROGRAMMAZIONE BIENNIO: SECONDA DISCIPLINA: INFORMATICA PIANO DI LAVORO DEL DOCENTE / RELAZIONE FINALE Anno scolastico 2014/2015 DOCENTE Prof. PAOLO ARMANI CLASSE:

Dettagli

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

Introduzione al Linguaggio C ed all IDE DEV-C++ Microsoft Windows e Dev-C++ Introduzione al Linguaggio C ed all IDE DEV-C++ Le Esercitazioni in Laboratorio Laboratorio M1 + MLAB1/2: Edificio Via Valotti, primo piano e piano interrato Orario: Mercoledì

Dettagli