Anteprima
Vedrai una selezione di 8 pagine su 35
Calcolo numerico 08/09 Pag. 1 Calcolo numerico 08/09 Pag. 2
Anteprima di 8 pagg. su 35.
Scarica il documento per vederlo tutto.
Calcolo numerico 08/09 Pag. 6
Anteprima di 8 pagg. su 35.
Scarica il documento per vederlo tutto.
Calcolo numerico 08/09 Pag. 11
Anteprima di 8 pagg. su 35.
Scarica il documento per vederlo tutto.
Calcolo numerico 08/09 Pag. 16
Anteprima di 8 pagg. su 35.
Scarica il documento per vederlo tutto.
Calcolo numerico 08/09 Pag. 21
Anteprima di 8 pagg. su 35.
Scarica il documento per vederlo tutto.
Calcolo numerico 08/09 Pag. 26
Anteprima di 8 pagg. su 35.
Scarica il documento per vederlo tutto.
Calcolo numerico 08/09 Pag. 31
1 su 35
D/illustrazione/soddisfatti o rimborsati
Disdici quando
vuoi
Acquista con carta
o PayPal
Scarica i documenti
tutte le volte che vuoi
Estratto del documento

CALCOLO NUMERICO-A.d'Alessio 16

Le istruzioni sono ripetute while l'espressione logica è vera, altrimenti sono saltate.

n=0;
while n <= k
    n=n+1;
end

CALCOLO NUMERICO-A.d'Alessio 17

if l'espressione logica if l'espressione logica istruzioni end istruzioni 1 elseif l'espressione logica istruzioni 2 if l'espressione logica else istruzioni 1 istruzioni 3 else end istruzioni 2 end

if espressione logica
    istruzioni
end

if espressione logica
    istruzioni 1
elseif espressione logica
    istruzioni 2
else
    istruzioni 1
    istruzioni 3
end

CALCOLO NUMERICO-A.d'Alessio 18
if x>0
    sqrt(x)
    if n == k
        if d==0
        end
        x(n)=a;
        a=d+1;
    else
        elseif d>0
        x(n)=b;
        b=sqrt(d);
    end
else
    c=-d;
end

CALCOLO NUMERICO-A.d'Alessio 19

break: uscita da un ciclo for o while

for k=1:10
    x=50-x^2
    if x<0
        break
    end
end

Visualizza un messaggio ed arresta
error('t')
esto i calcoli
>> if a<0
    error('a è negativo')
end
??? a è negativo

CALCOLO NUMERICO-A.d'Alessio 20

switch expr switch a case valore 1 case 2 istruzioni y=2*a; case valore2 case 3 istruzioni y=3*a;... case 5 otherwise y=5*a; istruzioni

switch expr
    switch a
        case valore 1
            istruzioni
            y=2*a;
        case valore 2
            case 3
            istruzioni
            y=3*a;
        ...
        case 5
            otherwise
            y=5*a;
    end
otherwise
end y=a;
end

CALCOLO NUMERICO-A.d'Alessio 21
uso ottimale del Matlab
non scrivere programmi come con
qualsiasi linguaggio di programmazione
un sfruttare le potenzialità
nel gestire le matrici e le funzioni interne
molti calcoli con pochi comandi in tempo minore

CALCOLO NUMERICO-A.d'Alessio 22
Programmare correttamente in Matlab
eliminare cicli for sostituibili
da operazioni vettoriali
>> y
>> x=[3 -2 4 -1 7 6 -9]; y =
>> j=0; 1 3 5 6
>> for k=1:length(x)
if x(k)>0 >> x=[3 -2 4 -1 7 6 -9];
j=j+1; >> y=find(x>0)
y(j)=k; y=end
end 1 3 5 6

CALCOLO NUMERICO-A.d'Alessio 23
Input – Output
input disp(x)
x= (‘valore di x’)
visualizza un testo sullo visualizza il
schermo, aspetta che valore di una
l’utente digiti un valore variabile
che registra nellavariabile specificata

CALCOLO NUMERICO-A.d'Alessio 24
Conversione di numeri in stringhe
>> n=input(‘ valore di n’)
valore di n 6
n = r=2.5; area=pi*r^2;6 >>
t=['il cerchio di raggio ',num2str(r),' ha area ',num2str(area)];
array b [1 2 3 5]
b = 
disp(t)
1 2 3 5 il cerchio di raggio 2.5 ha area
disp(n)
6 19.36
disp(b)
1 2 3 5 CALCOLO NUMERICO-A.d'Alessio 25
salvare e leggere dati in un file
save load
w=0:0.1:10;
save dati.mat w
clear all
load dati
delete nomefile
CALCOLO NUMERICO-A.d'Alessio 26
Una sequenza di istruzioni Matlab si può
memorizzare in un text file detto m-file
unità di programma richiamabile
tramite il nome dalla finestra comando
deve avere estensione .m
per creare un m-file si usa
l'editor/debugger di Matlab
CALCOLO NUMERICO-A.d'Alessio 27
CALCOLO NUMERICO-A.d'Alessio 28
Memorizziamo in uno script-file il programma
che calcola il fattoriale di n
n=input('valore di n')
k=n; nfat=k;
while
k>2k=k-1;
nfat=nfat*k;
end
disp(nfat)
CALCOLO NUMERICO-A.d'Alessio 29
si seleziona dal menù File
New M-File
CALCOLO NUMERICO-A.d'Alessio 30
Si scrive il programma
lo si salva con un nome
Save as fattoriale.m
per eseguire il programma basta
digitare fattoriale
CALCOLO NUMERICO-A.d'Alessio 31
Digitando nella command window
>>fattoriale
valore di n 4
n = 4
CALCOLO NUMERICO-A.d'Alessio 32
function [ ou1,…,outn] = nome (in1,..,inn)
nomeParola chiave Parametri input-output
ritorno al programma chiamante
dopo l’esecuzione ultimo comando
return
se si incontra
Matlab mette a disposizione molte function
CALCOLO NUMERICO-A.d'Alessio 33
La memorizzazione di una function è uguale a quella di uno script
function file per il calcolo di n!
memorizzato nel file fatto.m
function nfat=fatto(n)
%funzione che calcola il fattoriale di n
%n : parametro input, valore di cui si vuole il fattoriale
%nfat: parametro output, fattoriale di n
k=n;
nfat=k;
while

k>2k=k-1;nfat=nfat*k;end

I commenti inseriti all’inizio sono mostrati digitando help fatto

CALCOLO NUMERICO-A.d'Alessio 34

Dettagli
Publisher
A.A. 2012-2013
35 pagine
SSD Scienze matematiche e informatiche MAT/08 Analisi numerica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher valeria0186 di informazioni apprese con la frequenza delle lezioni di Calcolo numerico e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli studi di Napoli Federico II o del prof D'Alessio Alessandra.