Presentation laddar. Vänta.

Presentation laddar. Vänta.

Grundläggande programmering. Innehåll Problemen Variabler Villkorssatser Problem 1 Upprepningar Problem 2 Vektorer Problem 3.

Liknande presentationer


En presentation över ämnet: "Grundläggande programmering. Innehåll Problemen Variabler Villkorssatser Problem 1 Upprepningar Problem 2 Vektorer Problem 3."— Presentationens avskrift:

1 Grundläggande programmering

2 Innehåll Problemen Variabler Villkorssatser Problem 1 Upprepningar Problem 2 Vektorer Problem 3

3 Introduktion

4 Problem Problem 1: Vi får göra ett uttag som är mellan 100 och 2000 men endast om uttaget är samma som eller mindre än beloppet på kontot Problem 2: Beräkna fakulteter (10! = 10*9*8.. ) Problem 3: Hitta det största talet i en mängd

5 För att lösa problem 1 Vi behöver veta något om: Variabler Villkorssatser

6 Variabler x = 5; Variabelns namn Variabelns värde Vi säger att variabeln x har tilldelats värdet 5

7 Variabler Olika värden: x = 3; x = 2.01; x = true; En kompilator (Tolk) läser varje instruktion radvis och börjar med den översta.

8 Räkneoperationer för tal + Addition - Subtraktion * Multiplikation / Division

9 Räkneoperationer för heltal Exempel på addition: x = 5; Hur skriver vi för att x ska ha tilldelats värdet 7 (vi måste addera till 2)? Så här? x + 2; NEJ För att x ska ha tilldelats värdet 7. måste vi använda tilldelningstecknet =

10 Räkneoperationer för heltal Fortsättning på exempel Så här? x = 2; Nästan Nu tilldelade vi x värdet 2. Men hur gör vi då? x = x + 2; Rätt Vi hämtar x sedan tidigare och lägger till 2 och sparar resultatet i x.

11 Räkneoperationer för heltal Slutsats? Här skiljer sig matematik och programmering! Från föregående exempel x = x + 2; Om vi läser det som en ekvation får vi att: 0 = 2 ! OBS! Tilldelningstecknet är inte samma sak som matematikens likhetstecken

12 Räkneoperationer för heltal Testa din förståelse! x = 4; y = 3; x = y; y = y + x; Vad blev x? x = 3 Vad blev y? y = 6

13 Division 1/3 = … fortsätter med 3:or i all oändlighet. Exempel: x = 1/3 Innehåller vår variabel ett oändligt antal 3:or? Nej! För att lagra ett oändligt antal 3:or behöver vi ett oändligt stort minne att lagra de i.

14 Fler begränsningar Datorn har ett största tal Datorn har ett minsta tal Vad gör det? Detta påverkar ens beräkningar och ger upphov till en del fenomen. Vilket tas upp i beräkningsvetenskap I.

15 Villkorssatser När vi vill att något ska ske efter att ett villkor har uppfyllts använder vi en villkorssats (kallas även if-sats)

16 Villkorssatser Exempel: Om lampknappen är nertryckt så tänd lyset. Lampknappen är nertryckt. Modell: lampknapp = true; if lampknapp är true %kod som tänder lyset end

17 Villkorssatser Det finns olika sätt att göra jämförelser på. I vårt fall var vi intresserade av att se om lampknappens värde var samma som true. Det hade vi skrivit så här: if lampknapp == true %kod som tänder lyset end

18 Villkorssatser a >ba är större än b a < ba är mindre än b a >= b a är större än eller samma som b a <= ba är mindre än eller samma som b a == ba är samma som b a != ba är inte samma som b

19 Villkorssatser Om vi vill göra något endast om ett villkor inte är uppfyllt kan vi bygga vidare på vår if-sats. Vi utökar föregående exempel: if lampknapp == true %kod som tänder lyset else %kod som släcker lyset end

20 Villkorssatser Exempel: Vi vill tanka bilen om det ryms bensin i bensintanken Vi vill veta hur mycket bensin som vi har fyllt tanken med

21 Villkorssatser Vilka variabler har vi? Vi gissar på… maxtank %Maxvolym i tanken bensintank %Volym i tanken önskadtank %Önskad volym giventank %Bensinen macken ger oss

22 Villkorssatser Vilka scenarion finns? 1.Vi försöker stoppa i för mycket bensin 2.Vi stoppar in tillåten mängd bensin Kan flera scenarion inträffa samtidigt? Nej. Vi kan inte ha en överfull tank samtidigt som det finns plats kvar i den!

23 Villkorssatser 1.Vi stoppar in tillåten mängd bensin (Lättaste först) Sökt: hur mycket bensin tanken fylls med Det måste vara samma mängd som den vi bad om! alltså: giventank = önskadtank

24 Villkorssatser Vi försöker stoppa i för mycket bensin Sökt: hur mycket bensin tanken fylls med Vi stoppar i för mycket bensin om: Bensintank + önskadtank > maxtank Bensin vi fyller på med är då: giventank = maxtank - bensintank

25 Villkorssatser Sätter vi ihop allt har vi: if bensintank + önskadtank > maxtank giventank = maxtank –bensintank else giventank = önskadtank end

26 Villkorssatser Vi kan sätta ihop flera villkor Exempel: if anv == 1234 && password == 4321 på svenska: om användarnamnet är 1234 och lösenordet är 4321 så är villkoret uppfyllt eller skrivs med |

27 Problem 1 Problem 1: Vi får göra ett uttag som är mellan 100 och 2000 men endast om uttaget är samma som eller mindre än beloppet på kontot Vilka variabler behövs? Hur ser villkoren ut som beskriver uttagen?

28 Upprepningar Vi vill upprepa kod så länge ett villkor är uppfyllt

29 Upprepningar Exempel: =.. Vad gäller? Upprepningsvillkor: Vi börjar på 1 och slutar efter 10, vi ökar med 1 per steg. Under varje upprepning lagrar vi summan

30 Upprepningar summa = 0; for i går från 1 till 10 %ändra summan end

31 Upprepningar summa = 0; for i=1:1:10 summa = summa + i; end

32 Upprepningar Vad gör vi om vi vill stega så länge a > b, eller nåt liknande? Vi behöver något annat än for, vi behöver while

33 While while villkor %gör det här så länge villkoret är uppfyllt %Se till så att variablerna i villkoret ändras end While används när vi vill ha större kontroll över stegningen.

34 Problem 2 Beräkna fakulteter 10! = 10*9*8*7*6*5*4*3*2*1 0! = 1 Prova beräkningen åt båda hållen. 1*2*3*.. Sen 10*9*8*..

35 Vektorer En vektor är en variabel med en lista av värden

36 Vektorer Exempel: a = (1,0,0,0,0); 10000

37 Vektorer För att komma åt ett element måste vi tala om vektorns index. Kod: a(1) = index: 2 värde:

38 Vektorer Exempel: Vi vill beräkna medelvärdet (Totala summan delat på antalet element) givet mängden = {1,0,0,1} Medelvärde : 0.25 * ( ) = 0.5

39 Vektorer Vad blir koden? a = [1,0,0,1]; summa = 0; for i=1:1:4 summa = summa + a(i); end medelvärde = summa/4;

40 Problem 3 Hitta det största talet i mängden: {2,9,8,11,6}


Ladda ner ppt "Grundläggande programmering. Innehåll Problemen Variabler Villkorssatser Problem 1 Upprepningar Problem 2 Vektorer Problem 3."

Liknande presentationer


Google-annonser