De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

Vraag 1: Functies Bestudeer dit stukje code: >> print (4.0/3.0)* *1**3 >> print (4.0/3.0)* *2**3 >> print (4.0/3.0)* *3**3 >> print.

Verwante presentaties


Presentatie over: "Vraag 1: Functies Bestudeer dit stukje code: >> print (4.0/3.0)* *1**3 >> print (4.0/3.0)* *2**3 >> print (4.0/3.0)* *3**3 >> print."— Transcript van de presentatie:

1 Vraag 1: Functies Bestudeer dit stukje code: >> print (4.0/3.0)*3.1415925*1**3 >> print (4.0/3.0)*3.1415925*2**3 >> print (4.0/3.0)*3.1415925*3**3 >> print (4.0/3.0)*3.1415925*4**3 >> print (4.0/3.0)*3.1415925*5**3 >> print (4.0/3.0)*3.1415925*6**3 Hoe kunnen we dit efficienter en voornamelijk duidelijker laten verlopen?

2 Vraag 1: Functies Introduceren een variable pi: >> pi = 3.1415925 >> print (4.0/3.0)*pi*1**3 >> print (4.0/3.0)*pi*2**3 >> print (4.0/3.0)*pi*3**3 >> print (4.0/3.0)*pi*4**3 >> print (4.0/3.0)*pi*5**3 >> print (4.0/3.0)*pi*6**3 Kunnen we dit nog efficienter laten verlopen?

3 Vraag 1: Functies Functie: Abstractie techniek  Ingewikkelde of veel voorkomende statements worden gegroepeerd in een functie. Syntax van een Functie Definitie: def functie_naam(parameter lijst): return mijn_resultaat Keywoord waardoor Python weet dat een nieuwe functie begonnen wordt Zelfgekozen functie naam  Geef een betekenisvolle naam! 0 of meerdere parameters Parameter = een variabele die een waarde krijgt wanneer de functie wordt opgeroepen

4 Vraag 1: Functies Functie: Abstractie techniek  Ingewikkelde of veel voorkomende statements worden gegroepeerd in een functie. Syntax van een Functie Definitie: def functie_naam(parameter lijst): return mijn_resultaat Indentatie is belangrijk  Gebeurt automatisch in Wing 101 Willekeurig aantal statements Keywoord return geeft aan dat een waarde (mijn_resultaat) wordt teruggegeven!

5 Vraag 1: Functies Introduceer een functie Vol_Bol: >> def Vol_Bol(radius): >>pi=3.1415925 >>return (4.0/3.0)*pi*radius**3 >> >> print Vol_Bol(1) >> print Vol_Bol(2) >> print Vol_Bol(3) >> print Vol_Bol(4) >> print Vol_Bol(5) >> print Vol_Bol(6)

6 Vraag 1: Functies Definieer in een nieuw werkschrift een functie die een ingegeven temperatuur omzet van Celsius naar Fahrenheit: ℉ = ℃ * 9/5+32. Test deze functie door ze verscheidene keren op te roepen met andere parameters.

7 Vraag 1: Functies Definieer in een nieuw werkschrift een functie die een ingegeven temperatuur omzet van Celsius naar Fahrenheit: ℉ = ℃ * 9/5+32. Test deze functie door ze verscheidene keren op te roepen met andere parameters. >> def Celcius2Fahrenheit(temperatuur) >>f = temperatuur*(9.0/5.0)+32 >>return f

8 Vraag 1: Functies Definieer in een nieuw werkschrift een functie die een ingegeven temperatuur omzet van Celsius naar Fahrenheit: ℉ = ℃ * 9/5+32. Test deze functie door ze verscheidene keren op te roepen met andere parameters. >> def Celcius2Fahrenheit(temperatuur) >>f = temperatuur*(9.0/5.0)+32 >>return f >> >> print Celsius2Fahrenheit(10) >> print Celsius2Fahrenheit(-40) >> print Celsius2Fahrenheit(100)

9 Vraag 1: Functies Definieer in een nieuw werkschrift een functie die een ingegeven temperatuur omzet van Celsius naar Fahrenheit: ℉ = ℃ * 9/5+32. Test deze functie door ze verscheidene keren op te roepen met andere parameters. >> def Celcius2Fahrenheit(temperatuur) >>f = temperatuur*(9.0/5.0)+32 >>return f >> >> print Celsius2Fahrenheit(10) >> print Celsius2Fahrenheit(-40) >> print Celsius2Fahrenheit(100) Functienaam

10 Vraag 1: Functies Definieer in een nieuw werkschrift een functie die een ingegeven temperatuur omzet van Celsius naar Fahrenheit: ℉ = ℃ * 9/5+32. Test deze functie door ze verscheidene keren op te roepen met andere parameters. >> def Celcius2Fahrenheit(temperatuur) >>f = temperatuur*(9.0/5.0)+32 >>return f >> >> print Celsius2Fahrenheit(10) >> print Celsius2Fahrenheit(-40) >> print Celsius2Fahrenheit(100) Formele parameters

11 Vraag 1: Functies Definieer in een nieuw werkschrift een functie die een ingegeven temperatuur omzet van Celsius naar Fahrenheit: ℉ = ℃ * 9/5+32. Test deze functie door ze verscheidene keren op te roepen met andere parameters. >> def Celcius2Fahrenheit(temperatuur) >>f = temperatuur*(9.0/5.0)+32 >>return f >> >> print Celsius2Fahrenheit(10) >> print Celsius2Fahrenheit(-40) >> print Celsius2Fahrenheit(100) Actuele parameters

12 Vraag 1: Functies Definieer in een nieuw werkschrift een functie die een ingegeven temperatuur omzet van Celsius naar Fahrenheit: ℉ = ℃ * 9/5+32. Test deze functie door ze verscheidene keren op te roepen met andere parameters. >> def Celcius2Fahrenheit(temperatuur) >>f = temperatuur*(9.0/5.0)+32 >>return f >> >> print Celsius2Fahrenheit(10) >> print Celsius2Fahrenheit(-40) >> print Celsius2Fahrenheit(100) Lokale variable

13 Vraag 1: Functies Definieer in een nieuw werkschrift een functie die een ingegeven temperatuur omzet van Celsius naar Fahrenheit: ℉ = ℃ * 9/5+32. Test deze functie door ze verscheidene keren op te roepen met andere parameters. >> def Celcius2Fahrenheit(temperatuur) >>f = temperatuur*(9.0/5.0)+32 >>return f >> >> print Celsius2Fahrenheit(10) >> print Celsius2Fahrenheit(-40) >> print Celsius2Fahrenheit(100) Return statement

14 Predicaat = functie die een booleaanse waarde teruggeeft Vraag 2: Predicaten

15 Predicaat = functie die een booleaanse waarde teruggeeft a)Schrijf een functie die teruggeeft of een bepaald jaartal een schrikkeljaar is of niet. Een schrikkeljaar is deelbaar door 4, maar niet deelbaar door 100. Indien het jaar deelbaar is door 400 dan is het weer wel een schrikkeljaar. Vraag 2: Predicaten

16 Predicaat = functie die een booleaanse waarde teruggeeft a)Schrijf een functie die teruggeeft of een bepaald jaartal een schrikkeljaar is of niet. Een schrikkeljaar is deelbaar door 4, maar niet deelbaar door 100. Indien het jaar deelbaar is door 400 dan is het weer wel een schrikkeljaar. >> def isSchrikkeljaar(jaar): >> schrikkel = (((jaar % 4)==0) and ((jaar % 100)!=0)) or ((jaar % 400)==0) >> return schrikkel Vraag 2: Predicaten

17 Predicaat = functie die een booleaanse waarde teruggeeft a)Schrijf een functie die teruggeeft of een bepaald jaartal een schrikkeljaar is of niet. Een schrikkeljaar is deelbaar door 4, maar niet deelbaar door 100. Indien het jaar deelbaar is door 400 dan is het weer wel een schrikkeljaar. b)Schrijf een functie waaraan je twee jaartallen kunt meegeven. De functie geeft aan of er minstens één van de twee jaren een schrikkeljaar is. Tip: je kunt de functie die je in vraag 2a) hebt gemaakt hiervoor best hergebruiken Vraag 2: Predicaten

18 Predicaat = functie die een booleaanse waarde teruggeeft a)Schrijf een functie die teruggeeft of een bepaald jaartal een schrikkeljaar is of niet. Een schrikkeljaar is deelbaar door 4, maar niet deelbaar door 100. Indien het jaar deelbaar is door 400 dan is het weer wel een schrikkeljaar. b)Schrijf een functie waaraan je twee jaartallen kunt meegeven. De functie geeft aan of er minstens één van de twee jaren een schrikkeljaar is. Tip: je kunt de functie die je in vraag 2a) hebt gemaakt hiervoor best hergebruiken >> def isAtLeastOneSchrikkel(jaar1,jaar2): >> return (isSchrikkeljaar(jaar1) or isSchrikkeljaar(jaar2)) Vraag 2: Predicaten

19 Vraag 3: Methodes Lijsten en Strings zijn objecten die een aantal methoden hebben. Lijst Methodes: mylist.append(value) mylist.insert(index,value) mylist.remove(value) mylist.reverse() mylist.sort() mylist.pop()

20 Vraag 3: Methodes Lijsten en Strings zijn objecten die een aantal methoden hebben. Lijst Methodes String Methodes mystring.capitalize() mystring.find(s), mystring.find(s,start), mystring.find(s,start,end) mystring.islower(), mystring.isupper() mystring.replace(old_s, new_s) mystring.split(), mystring.split(separator) mystring.strip(), mystring.strip(s) mystring.upper()

21 Vraag 3: Methodes a)Definieer eerst een nieuwe lijst: ‘mylist = [100,200,400,500]’. Nu willen we op de derde plaats in de lijst de waarde ‘300’ toevoegen. Probeer dit te verwezenlijken door gebruik te maken van de methode ‘insert’. Daarna voeg je aan de lijst de waarde ‘50’ toe door middel van de methode ‘append’. Print de lijst af. Sorteer ze met behulp van de methode ‘sort’, en print ze weer af.

22 Vraag 3: Methodes b)Sla de volgende zin op in een nieuwe string-variabele: ‘zeven zottegemse zotten zullen zes zomerse zondagen zwemmen zonder zwembroek.’ –Tel het aantal woorden in de zin. Hint: een string heeft een methode ‘split’ die een lijst teruggeeft met woorden gescheiden door spaties. ‘len(mylist)’ geeft je de lengte van de lijst. –Vervang voor elk woord de eerste letter door een ‘p’. Hint: een string heeft een methode ‘replace(old,new)’ die een substring ‘old’ vervangt voor de substring ‘new’.

23 Vraag 4: Functies In deze oefening zullen we een reeks functies maken waarmee je strings kan maken die een raster voorstellen: #----#----# | | | #----#----# | | | #----#----# Als je het raster lijn per lijn bekijkt kan je twee soorten lijnen onderscheiden: de randen van het raster en de middenstukken.

24 Vraag 4: Functies Als je het raster lijn per lijn bekijkt kan je twee soorten lijnen onderscheiden: de randen van het raster en de middenstukken. a)Maak een functie ‘maak_rand’ die de string ‘#----#----#\n’ als resultaat geeft en een functie ‘maak_midden’die de string ‘| | |\n’ als resultaat geeft. Probeer hierbij zoveel mogelijk gebruik te maken van de operatoren ‘samenvoegen’ (+) en ‘herhalen’ (*) op strings!

25 Vraag 4: Functies b)Maak nu een functie ‘maak_raster’ die de twee vorige functies gebruikt om het voorbeeldraster te construeren. Maak opnieuw zoveel mogelijk gebruik van de operatoren + en * op strings om je zoveel mogelijk typewerk te besparen. Je kan je functie testen door gebruik te maken van de print- functie: ‘print maak_raster()‘ c)Pas de functies ‘maak_rand’ en ‘maak_midden’ aan zodat ze een argument verwachten dat de breedte aangeeft. Deze parameter bepaalt hoe breed elk vierkantje van het raster is en bepaalt dus hoeveel ”-”-tekens en ” ”-tekens je zal moeten genereren.

26 Vraag 4: Functies d)Zorg vervolgens dat je aan de functie ‘maak_raster’ ook een argument kan meegeven dat de breedte van de vierkantjes uit het raster bepaalt. e)Voeg een tweede argument toe aan de functie ‘maak_raster’ dat de hoogte van elk vierkantje bepaalt. Dit komt neer op het aanpassen hoeveel “middens” je moet genereren. Uiteindelijk moet bv. ‘maak_raster(8,10)’ het volgende resultaat opleveren:


Download ppt "Vraag 1: Functies Bestudeer dit stukje code: >> print (4.0/3.0)* *1**3 >> print (4.0/3.0)* *2**3 >> print (4.0/3.0)* *3**3 >> print."

Verwante presentaties


Ads door Google