Presentation laddar. Vänta.

Presentation laddar. Vänta.

Funktioner, styrstrukturer, manipulering av matriser

Liknande presentationer


En presentation över ämnet: "Funktioner, styrstrukturer, manipulering av matriser"— Presentationens avskrift:

1 Funktioner, styrstrukturer, manipulering av matriser
Föreläsning 14 Matlab fortsättning Funktioner, styrstrukturer, manipulering av matriser KTH, CSC, Vahid Mosavat

2 Kolon operatorn Man kan lätt skapa en vektor med hjälp av : (kolon operatorn) enligt nedan: startvärde : intervall : maxvärde T.ex: 1:2:10 ger [ ] 4:-3:-8 ger [ ]  KTH, CSC, Vahid Mosavat

3 Manipulering av matriser
Följande tre kommandon underlättar manipulering och åtkomst av element i en matris: (?) (?:?:?) (?:? , ?:?) Anta matrisen. KTH, CSC, Vahid Mosavat

4 Manipulering av matriser
KTH, CSC, Vahid Mosavat

5 Manipulering av matriser
KTH, CSC, Vahid Mosavat

6 Kommentarer i Matlab I de flesta programspråk kan man skriva kommentarer i koden. Kommentarer gör programmet mer lättläst. I Matlab är allt mellan % och radslut en kommentar.

7 if-sats En if-sats används för att välja exekveringsväg. Notera avslutande end och frånvaron av kolon, jmf med Python. price = input('How much? '); if price >= 135 disp('very expensive but') end disp(['I buy one copy.'])

8 if-else-sats En if-sats används för att välja exekveringsväg. Notera avslutande end, och frånvaron av kolon, jmf med Python. age = input(’How old are you? ') ; if age >= 20 disp('welcome to systembolaget') else a = 20-age ; disp(['sorry, you must wait ' num2str(a) ' years']) end

9 if-elseif-…-elsif-else-sats
if villkor Uttryck end if villkor Uttryck1 else Uttryck2 end if villkor1 Uttryck1 elseif villkor2 Uttryck2 end Notera elseif och inte elif som i Python.

10 Loopar För att upprepa ett en del av ett program använder man en loopar (slinga). Det finns två sorters loopar i Matlab: for while

11 Loop-syntax While-sats while ett_villkor_uttryck For-sats uttryck end
for variabel = vektor

12 Exempel: For-loop for i = [ ] disp(i) end

13 Exempel: While-loop i=1 while i < 10 disp(i) i = i + 1 end

14 Funktioner I Matlab kan man definiera egna funktioner.
Genom att undvika kodupprepning spar man tid. En funktion kan skriva i samma fil som huvudprogrammet eller i en separat fil. En funktion kan ta indata och returnera ett värde.

15 Funktion-Syntax Namnet på m-filen man skriver funktionen i måste exakt vara samma namn som funktionen. Syntaxen ser så här ut: function utdata = funktionensnamn(indata1, indata2, …), här kommer själva beräkningen. utdata måste initieras i funktionen om det är tänkt att funktionen ska returnera något värde.

16 Funktion-exempel Följande funktion skrivs i en fil som heter CToF.m
% funktionen cToF omvandlar celsius % till fahrenheit function F = cToF(celsius) F = *celsius

17 Funktion-exempel Följande funktion beräknar arean av en kvadrat.
function a = area(x, y) a = x * y KTH, CSC, Vahid Mosavat

18 Funktion-exempel Följande funktion beräknar arean av en vektor av kvadrater eller en kvadrat! function a = area(x, y) a = x .* y KTH, CSC, Vahid Mosavat

19 Lös ekvationssystem Definiera matris: A = [ 2 1 -1 ; -3 -1 2 ;
; ] Definiera kolumnvektor: b = [ ] Be Matlab att hitta lösning(ar): x = A\b KTH, CSC, Vahid Mosavat

20 Matlab jämfört med Python
Indexering av list/vektor från 1. Inga kolon för att påbörja block. Avsluta if, for, etc med end. Strängar skrivs med enkelfnutt: ’ inte med citationstecken.

21 Matlab jämfört med Python
Kolonoperator motsvarar range(), men hör övre gräns inklusive. Använd semikolon ; för att undvika att Matlab skriver ut deluttryck (behövs inte i Python).


Ladda ner ppt "Funktioner, styrstrukturer, manipulering av matriser"

Liknande presentationer


Google-annonser