Föreläsning 3 Programmeringsteknik och Matlab DD1315 moduler, Styrstrukturer (if, if-elif,if-else) Slingor () Importering av moduler Det finns en hel del funktioner man kan använda genom att era dem från pythons standard bibliotek. För att era de så använder man reserverade ordet. : math math.sin(3.14) random random.random() 2/18 randrange Om man vill slumpa ett heltal i ett givet intervall, så skrivet man: random # returnerar ett tal mellan 3 och 10 (exklusiv 10) random.randrange(3,10) 3/18 1
Följande är som returnerar ett boolskt värde d.v.s. sant () eller falskt (). Med hjälp av följande kan man skapa villkor-sats: ==, is!=, not < <= > >= 4/18 A=1 B=1 A==B A=1 B=1 A is B A= hej B= hej A == B A= hej B= hej A is B 5/18 If-sats En If-sats används för att undvika eller påtvinga exekvering av en eller flera satser. : if bokpris > 500: print( dyr bok! ) print( ingen affär ) print( hejdå ) 6/18 2
If-satsens struktur if villkor : Sats(er) Kod efter if-satsen Villkor sant Falskt Sats(er) Kod efter if satsen... 7/18 if bokpris > 500: print( dyr bok! ) print( ingen affär ) print( hejdå ) bokpris>500 sant falskt print ( dyr bok! ) print ( ingen affär ) print( hejdå ) 8/18 age=input( ålder: ) age=float(age) if age<20: print ( Åldersgräns är 20 för att kunna vara systembolagets kund ) 9/18 3
elif och else if -satser kan kombineras med elif och else för att åstadkomma lite mer avancerade program. : if bokpris>500: print( dyrbok, ingen affär! ) elif bokpris>300: print( dyr men jag behöver boken! ) else: print( billig bok, köp snabbt! ) 10/18 elif och else elif och else måste användas i samband med if. 11/18 if age < 20: print( för ung för att handla här ) else: print( Välkommen till systembolaget! ) Villkor Falskt print( Välkommen. ) Sant print( för ung ) Kod efter if satsen 12/18 4
-loop(-slinga) -slinga används för att exekvera en eller flera satster ett antal gånger. : varv=0 varv < 3: print( Hej ) varv = varv+1 13/18 -satsen struktur villkor: kod som ska upprepas villkor sant falskt Kod som ska upprepas Kod efter 14/18 Indentering Indentering (indragning av kod) har stor betydelse i python. Hur många gånger skrivs Hej ut av följande program? varv=0 varv < 3: print ( Hej ) varv = varv+1 15/18 5
Nästlade slingor Multiplikationstabell upp till 4: i=1 i<4 : j=1 j<4: k=i*j print(k,end= ) j=j+1 print() i=i+1 16/18 Villkor kan kombineras med na and, or, not : if pris<1000 and taltid>=100: print( Telefonfynd! ) A B A and B A or B not A 17/18 a= forkortad diverse:%5.3s % divers 5 string forkortad diverse: div 3 18/18 6
t= A%11.2f number %52687.43456 float 11 A 52687.43 number 2 19/18 t= A big%10d number %52687 digit 10 A big 52687 number 20/18 För att använda funktioner i pythons standard bibliotek använder man If-satser används för att villkorlig köra en eller flera satser. -slinga ( -sats) används för att upprepa en eller flera satser flera gånger. Genom att använda -satser får man kortare kod, mer genomskådig kod och ett mer flexibelt program. När två eller fler -sligor hamnar i varandra kallas det nästlade slingor. 21/18 7