Mini-Corso di Informatica

Documenti analoghi
Esercitazione #0. Introduzione a MatLab

Tutorial. Introduzione a Matlab

Introduzione al MATLAB c Parte 2

Esercitazione 00 Introduzione a Matlab

Università degli Studi di Napoli Federico II CdL Ing. Elettrica Corso di Laboratorio di Circuiti Elettrici

Appunti di informatica. Lezione 8 anno accademico Mario Verdicchio

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

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

UNIVERSITÀ DEGLI STUDI DI PAVIA FACOLTÀ DI INGEGNERIA. Matlab: esempi ed esercizi

Cicli. S i a i = a 1 + a 2 + a a n

Università degli Studi di Ferrara

CORSO DI LABORATORIO DI INFORMATICA

Programmazione a blocchi. Algobuild Prof. Sergio Roselli

Caratteristiche di un calcolatore elettronico

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

Primi script in MATLAB

Operatori relazionali

I costrutti forniti dal linguaggio si dividono in corrispondenti classi di istruzioni

Elementi di Calcolo Scientifico per l Ingegneria A.A

Introduzione allo Scilab Parte 2: elementi di programmazione strutturata

Laboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale

Laboratorio di Programmazione II Corso di Laurea in Bioinformatica Dipartimento di Informatica - Università di Verona

INTRODUZIONE A MATLAB. Introduzione. Calcolatrice base. Calcolatrice base. Variabili predefinite o speciali. Variabili predefinite o speciali

Informatica (A-K) 5. Algoritmi e pseudocodifica

Programmare con MATLAB c Parte 5 Cicli: for e while

Fondamenti di Informatica 6. Algoritmi e pseudocodifica

Costrutti condizionali e iterativi

Introduzione al MATLAB c Parte 3 Script e function

Laboratorio di Calcolo Numerico Laboratorio 8: Vettori e Matrici

LEZIONE 2 SCRATCH: INPUT DEI DATI Laboratorio di Informatica per l Educazione A. A. 2015/ /05/16 1 Dott. Aniello Castiglione

Esercitazione di Reti degli elaboratori

Costrutti condizionali e iterativi

Strutture di controllo condizionali in Matlab

Programmazione Matlab

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

Un esempio per iniziare. Il controllo del programma in C. Altri cenni su printf() Esercizi (printf) printf( 8!=%d, fatt);

Strutture di controllo (v.anche cap. 8 del testo MATLAB per l ingegneria )

Introduzione al MATLAB c Parte 3 Script e function

Introduzione al MATLAB c Parte 3 Script e function

JavaScript Core Language. Prof. Francesco Accarino IIS Atiero Spinelli Sesto San Giovanni via leopardi 132

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

MATLAB Elementi di grafica Costrutti di programmazione

Esercitazioni con GNU Octave

Linguaggio Testuale. E un formalismo che consente di rappresentare gli algoritmi mediante semplici istruzioni in linguaggio «parlato»

Introduzione a MATLAB

Iterazione determinata e indeterminata

Algoritmi stabili e instabili

8 Introduzione MATLAB

Corso di Informatica

Vettori e Matrici. Corso di Calcolo Numerico. 24 Aprile 2018

Matlab : le basi. Vediamo ora un esercizio di calcolo: Il volume di una sfera è dato da V=4*π*r 3 /3 dove r è il raggio.

Rappresentazione degli algoritmi

Iterazione A. Ferrari

3+4 2 (3+1) 4. Variabili a = 3 b = 4 c = a + b who, whos MATrixLABoratory Un numero è una matrice 1 1.

Fondamenti di Informatica

Introduzione a MATLAB

Diagramma a blocchi per la selezione, in un mazzo di chiavi, di quella che apre un lucchetto

Laboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale

Università degli Studi di Ferrara Corso di Laurea in Chimica - A.A

FONDAMENTI DI SEGNALI E TRASMISSIONE 2 Laboratorio

ISTRUZIONI A B K A, B, K A<B? SI A<B? SI A<B? SI

Comandi di Input/Output in Matlab

02/03/2016. LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 8 STRUTTURE DI CONTROLLO (1)

Fondamenti di Informatica A. A. 2018/19

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

Arrays. Vector array. Matrix array. Row vector. 2D matrix. 1 2 Column vector

Strutture di controllo

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

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

Matlab: Script e Funzioni

Informatica/ Ing. Meccanica/ Ing. Edile/ Prof. Verdicchio/ 05/02/2014/ Foglio delle domande / VERSIONE 1

STRUTTURE DI CONTROLLO DEL C++

Il presente plico contiene 3 esercizi e deve essere debitamente compilato con cognome e nome, numero di matricola.

IL COSTRUTTO ITERAZIONE

Fondamenti di Informatica

FONDAMENTI DI INFORMATICA

Laboratorio di Calcolo Numerico Laboratorio 3: Algoritmi stabili e instabili, Bisezione

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

Esercizi scalari. 10*10^6 + 3; (Usare la notazione esponenziale) coseno(30 ) - seno(pi greco/2) + pi greco /6 (0.3896)

Fondamenti di Informatica

Calcolo Numerico A.A Lab n

Corso di Fondamenti di Informatica Classi di istruzioni 2

Laboratorio di Matlab

Ing. Lorenzo Vismara

Introduzione alla programmazione Algoritmi e diagrammi di flusso. Sviluppo del software

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

Capitolo 10 - Strutture

MATLAB Alcune funzioni utili: fprintf, length, size

19 FEBBRAIO SECONDA PARTE

Ogni parte non cancellata a penna sarà considerata parte integrante della soluzione.

Introduzione alla programmazione

Transcript:

Mini-Corso di Informatica CALCOLI DI PROCESSO DELL INGEGNERIA CHIMICA Ing. Sara Brambilla Tel. 3299 sara.brambilla@polimi.it

Note sulle esercitazioni Durante le esercitazioni impareremo a implementare gli algoritmi discussi a lezione Ci avvaleremo di Matlab come strumento, ma si potrebbe usare un qualunque altro linguaggio di programmazione Matlab offre una serie di vantaggi che vi saranno chiari durante il corso

Note sull esame Durante le esercitazioni è lecita qualsiasi domanda, anche se vi sembra banale Le domande stupide non influiscono sul voto dell esame (a meno che non le facciate durante l esame)

Il computer Il computer è una macchina e come tale ignorante Dovete spiegargli, attraverso un linguaggio di programmazione, che cosa deve fare, passo per passo, nella sequenza corretta

DATI DI INPUT PROGRAMMA DATI DI OUTPUT

Concetti fondamentali VARIABILE ISTRUZIONI FONDAMENTALI FUNZIONE

Variabili Le variabili sono caratterizzate da: Il tipo (variabili numeriche, stringhe di caratteri, ) Il valore Il nome var2 = ciao var1 = 4 Tipo numerico Tipo stringa

Le variabili Matlab è case-sensitive: la variabile pippo è diversa dalla variabile PiPpo È bene usare la camel notation: lamianuovavariabile È bene evitare variabili chiamate l, perché in Matlab la elle minuscola sembra un uno, il che rende difficile rileggere il codice e scovare gli errori

Variabili Memoria del PC 1 0 1 0 0 0 1 0 var1 = 4 Var1 = 7 0 1 1 0 0 0 1 1

Vettori In Matlab un vettore si rappresenta come v1 = [5 45 73 29] Gli elementi del vettore si contano a partire da 1: v1 = [5 45 73 29] 1 elemento 4 elemento 2 elemento 3 elemento

Vettori Per accedere all i-esimo elemento del vettore v1 si utilizza l espressione v1(i) Quindi per accedere al 3 elemento: v1(3)

Vettori Creazione di un vettore con tutti gli elementi = 0 v1 = zeros(3) v1 [0 0 0] Creazione di un vettore con tutti gli elementi = 1 v1 = ones(1,3) v1 [1 1 1]

Vettori Vettore con elementi equispaziati v1 = [1:2:11] inizio incremento fine [1 3 5 7 9 11] Meglio usare l istruzione v1 = linspace(1,11,6); partenza fine numero elementi

Matrici In Matlab una matrice si rappresenta come: A = [17 15; 4 32] Si ottiene la matrice: A = [17 15 4 32] Segnala l inizio di una nuova riga

Matrici Per accedere al j-esimo elemento della riga k: A(k,j) Ad esempio il 2 elemento della 1 riga è: A(1,2) E si ottiene A = [17 15 15 4 32]

Dimensioni Per conoscere le dimensioni di un vettore si utilizza il comando: dim = length(v1) Per conoscere le dimensioni di una matrice si utilizza il comando: [nrig,ncol] = size(a)

Copia di vettori e matrici Un vettore (o matrice) a può essere duplicato, copiato in un altro vettore (o matrice) b con l istruzione: b = a Non serve, cioè, copiare tutti gli elementi uno ad uno

Costrutti Ciclo FOR Ciclo WHILE Costrutto IF ELSE ELSE IF

Ciclo FOR Il ciclo FOR è un istruzione che permette di eseguire un certo numero di volte una serie di comandi. Variabile contatore Valore iniziale for i = 1:1:10... istruzioni end Incremento Valore finale

Ciclo FOR - Esempio Sommare i numeri da 1 a 100 somma = 0; for i = 1:100 somma = somma + i; end

Ciclo WHILE Il ciclo while è un ciclo che ripete le istruzioni al suo interno fino a che la condizione è vera while(condizione) istruzioni end

Ciclo WHILE - Esempio Sommare i numeri interi a partire da 1 fino a che la loro somma non sia maggiore o uguale a 325 somma = 0; cont = 0; while(somma < 325) cont = cont + 1; somma = somma + cont; end disp([ Numero iter :,num2str(cont)]);

IF ELSE ELSE IF Le istruzioni vengono svolte solo se la condizione è vera if(condizione) istruzioni elseif(condizione) istruzioni elseif(condizione) istruzioni else istruzioni end

IF ELSE ELSE IF - Esempio Calcolare il valore del modulo di un numero x = 45; if(x >= 0.) else end valoreassoluto = x; valoreassoluto = -x;

Le Funzioni Le funzioni sono blocchi di codice che svolgono un particolare compito.

a = 4.2; b = 7.3; c = MySum(a,b); Memoria del PC a b Copia dei valori di a e b nella nuove variabili x1 e x2 x1 x2 function y = MySum(x1,x2) y = x1 + x2; In y viene salvato il risultato dell operazione eseguita dalla funzione MySum. La variabile y viene restituita al codice che ha chiamato la funzione MySum

Note Quando Matlab entra nella funzione MySum, le variabili note sono SOLO quelle presenti nella funzione o passate alla funzione

c = MySum(a,b); a,b = variabili passate alla funzione MySum function y = MySum(x1,x2) x1,x2 = nome delle variabili passate a MySum e utilizzabili all interno della funzione y = valore restituito da MySum alla funzione che l ha chiamata

Se in MySum eseguiamo delle operazioni su x1 e x2 alterandone il valore, il valore di a e b rimane sempre lo stesso. Questo perché x1 e x2 non occupano lo stesso spazio di memoria di a e b Memoria del PC a b x1 x2

Le funzioni Le funzioni vanno salvate su file separati dal codice principale Il file deve avere lo stesso nome della funzione che è in esso contenuta

Problemi esempio 1. Sommare gli inversi dei numeri da 1 a 1E6 (un milione) 2. Creare un vettore con inizio da 1.25 e fine 2.55 con spaziatura 0.05 tra gli elementi 3. Individuare quanti inversi dei primi N numeri interi occorre sommare per ottenere un risultato maggiore di 3

4. Creare una funzione per la somma di due vettori 5. COMPITO A CASA: Dato l elenco dei numeri di matricola, determinare se nell elenco ci sono ripetizioni e quante sono. Con carta e penna determinare il numero minimo di confronti da effettuare. Sommare i due vettori a = [3 4 5 6]; b = [7 8 9 1]; elemento per elemento.

Determinare quanti anni sono necessari per accumulare almeno la somma di 30 k avendo depositato in banca 10 k e potendo contare su un interesse al netto di tutte le spese pari al 3.51%. Diagrammare l andamento del deposito bancario nel tempo.