DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
Sadegh Astaneh – [email protected] Marco D. Santambrogio – [email protected] Emanuele Panigati – [email protected]
Ver. aggiornata al 3 Gennaio 2012
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
• Warm Up mcm modulo
• Qualche cosa un pò più divertente numeroPrimo combinaImmagini
• Altri exe… tmp garaTuffi
2
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
• Warm Up mcm modulo
• Qualche cosa un pò più divertente • Altri exe..
3
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
• Dati due numeri x ed y, si definisce il minimo comune multiplo come mcm = x*y/MCD(x,y)
• Si risolve il problema creando una funzione mcm
4
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
• Dato un numero inserito dall’utente, scrivere a video il suo modulo Si usi una funzione di ordine superiore
modulo scritta da voi
• Esempio Inserire il numero:
• >>> -3 >>> 3
5
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
• Warm Up
• Qualche cosa un pò più divertente numeroPrimo combinaImmagini
• Altri exe..
6
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
• Dato un numero intero positivo inserito dall’utente, dire se tale numero è primo (stampa a video 1 se primo, 0 altrimenti) Un numero è primo se è divisibile solo
per 1 e se stesso Esempio
• >>> 7 ---> >>>1 • >>> 9 ---> >>>0
7
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
• Si conviene di rappresentare un’immagine mediante una matrice rettangolare di numeri, corrispondenti al colore dei suoi pixel (punti luminosi che compongono la figura)
• Si vuole progettare una funzione Octave di nome combinaImmagini che, ricevendo come parametri due matrici f1 ed f2 rappresentanti due immagini e due valori numerici C ed S, con C<S, rappresentanti due diversi colori, produce come risultato una terza figura f3, ottenuta da f1 ed f2 secondo la seguante regola. Nelle posizioni (r,c) in cui f1(r,c)<C ed f2(r,c)>C si ha f3(r,c)=f2(r,c)
-f1(r,c) Nelle posizioni (r,c) in cui f1(r,c)>S ed f2(r,c)<S si ha f3(r,c)=f1(r,c)
-f2(r,c) nelle posizioni rimanenti si ha f3(r,c)=f1(r,c) • Domande
Codificare la funzione combinaImmagini Scrivere uno script che acquisisce le due matrici di partenza
rispettivamente dai file file1.mat e file2.mat (si supponga che le due variabili contenenti le matrici al momento del salvataggio si chiamino matr1 e matr2), richiama la funzione combinaImmagini e salva sul file file3.mat la matrice risultante.
8
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
• Warm Up • Qualche cosa un pò più divertente
• Altri exe.. tmp garaTuffi
9
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
• Facendo uso della funzione di ordine superiore accumulatore
• Codificare la funzione tmp(v)
Prende come argomento un vettore di numeri v=[v1,…, vn]
Calcola e restituisce come risultato il valore
• Codice della funzione accumulatore
function [x]=accumulatore(f, a, u) x = u; for i=1:length(a) x = f(x, a(i)); end
10
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
• Facendo uso della funzione di ordine superiore accumulatore
• Codificare la funzione garaTuffi(v)
Prende come argomento un vettore di voti v=[v1,…, vn]
Calcola e restituisce come risultato il valore medio dei voti
• Codice della funzione accumulatore
function [x]=accumulatore(f, a, u) x = u; for i=1:length(a) x = f(x, a(i)); end
11
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE
• Fonti per lo studio Introduzione alla programmazione in
MATLAB, A.Campi, E.Di Nitto, D.Loiacono, A.Morzenti, P.Spoletini, Ed.Esculapio • Capitolo 2, 4, 5
12
Top Related