{"id":6127,"date":"2012-11-05T20:04:38","date_gmt":"2012-11-06T01:04:38","guid":{"rendered":"http:\/\/cscircles.cemc.uwaterloo.ca\/?page_id=6127"},"modified":"2019-03-04T11:01:29","modified_gmt":"2019-03-04T16:01:29","slug":"11a-lower-case-nl","status":"publish","type":"page","link":"https:\/\/cscircles.cemc.uwaterloo.ca\/dev\/11a-lower-case-nl\/","title":{"rendered":"11A: Kleine letters"},"content":{"rendered":"<p><em>Les 11 heeft drie delen A, B, C die in elke willekeurige volgorde kunnen worden doorgewerkt.<\/em><\/p>\n<p>Deze les bevat een oefening waarbij je twee functies dient te schrijven: in de ene zal de andere worden gebruikt om het doel te bereiken. Het doel is om een functie <code>lowerString<\/code> te schrijven die alle letters van de string omzet naar\u00a0<em>kleine letters<\/em>\u00a0(Eng.: <em>lower case<\/em>). (A, B, C zijn <em>hoofdletters<\/em> (Eng.:\u00a0<em>upper case<\/em>)\u00a0en a, b, c zijn kleine letters.) Bijvoorbeeld: het resultaat van<\/p>\n<pre>lowerString(\"This string has 9 CAPITAL letters (&amp; Punctuation)!\")<\/pre>geeft<\/p>\n<pre>\"this string has 9 capital letters (&amp; punctuation)!\"<\/pre>\n<h2>Stap 1: Karakters<\/h2>\n<p>De eerste stap is om een functie <code>lowerChar(char)<\/code> te schrijven die in staat is de omzetting van \u00e9\u00e9n karakter <code>char<\/code> naar een kleine letter terug te geven. Ze moet het volgende doen:<\/p>\n<ul>\n<li>als het als argument meegegeven karakter <code>char<\/code> een hoofdletter is (tussen '<code>A<\/code>' en '<code>Z<\/code>'), dan dient ze de kleine versie van de letter terug te geven (tussen '<code>a<\/code>' en '<code>z<\/code>')<\/li>\n<li>in alle andere gevallen, dient ze dezelfde <code>char<\/code> terug te geven die ze als argument meekreeg<\/li>\n<\/ul>\n<p>(Om de eerste stap te kunnen uitvoeren, moet je een <a href=\"\/6-if-nl\/\"><code>if<\/code>-opdracht<\/a> gebruiken, een <a href=\"\/9-else-and-or-not-nl\/\"><code>and<\/code>-operator<\/a>, en wat kennis toepassen uit <a href=\"\/7a-strings-nl\/\">de les over strings<\/a>.)<\/p>\n<p><form class=\"pbform\" action=\"#\" id=\"pbform0\" method=\"POST\">\n<div class='pybox modeNeutral ' id='pybox0'>\n<img title='You have not yet completed this problem.' src='https:\/\/cscircles.cemc.uwaterloo.ca\/dev\/wp-content\/plugins\/pybox\/files\/icon.png' class='pycheck'\/><div class=\"heading\"><span class='type'>Coding Exercise: <\/span><span class='title'>Kleine letters<\/span><\/div>Schrijf een functie <code>lowerChar(char)<\/code> die voldoet aan bovenstaande eisen.<div class=\"helpOuter\" style=\"display: none;\"><div class=\"helpInner\"><div style=\"text-align: center\">You need to create an account and log in to ask a question.<\/div><\/div><\/div><div class='pyboxTextwrap pyboxCodewrap RW resizy'  style='height: 526px;'><textarea wrap='off' name='usercode0' id='usercode0'  cols=10 rows=20   class='pyboxCode RW'>\n# delete this comment and enter your code here\n<\/textarea><\/div>\n<div id='pbhistory0' class='flexcontain' style='display:none;'><\/div>\n<div name=\"pyinput\" id=\"pyinput0\">Enter testing statements like <code>print(myfunction(\"test argument\"))<\/code> below.<div class=\"pyboxTextwrap resizy\" style=\"height: 102px;\" ><textarea wrap=\"off\" name=\"userinput\" class=\"pyboxInput\" cols=10 rows=4><\/textarea><\/div><\/div>\n<div class='pyboxbuttons'><table><tr>\n<td><input type='submit' name='submit' id='submit0' value=' '\/><\/td>\n<td><input type='button' name='switch' id=\"switch0\" value=\"Input Switch\" onclick=\"pbInputSwitch(0,'Y')\" ><\/td>\n<td><input type='button' name='consolecopy' value=\"Open in console\" onclick=\"pbConsoleCopy(0)\" ><\/td>\n<td><input type='button' name='visualize' value=\"Visualize\" onclick=\"pbVisualize(0,'Y')\" ><\/td>\n<\/tr><\/table><select id='pbSelect0' class='selectmore'><option name='more'>More actions...<\/option>\n<option name='history' data-pbonclick=\"historyClick(0,'11a.lowerchar')\" >History<\/option>\n<option name='help' data-pbonclick=\"helpClick(0);\" >Help<\/option>\n<\/select><\/div>\n<input type=\"hidden\" name=\"lang\" value=\"\"\/><input type=\"hidden\" id=\"inputInUse0\" name=\"inputInUse\" value=\"Y\"\/>\n<input type=\"hidden\" name=\"pyId\" value=\"0\"\/>\n<input type=\"hidden\" name=\"hash\" value=\"3cff4425e13e6ff9c1beffe61bbb4783\"\/>\n<div id='pbresults0' class='pbresults avoidline'><\/div>\n<\/div>\n<\/form>\n<script type='text\/javascript'>jQuery(function(){pbToggleCodeMirror(0);});pbInputSwitch(0,\"Y\");<\/script>\n<\/p>\n<h2>Stap 2: Strings<\/h2>\n<p>Nu moet je een tweede functie schrijven genaamd <code>lowerString(string)<\/code> die als resultaat de hele string in kleine letters teruggeeft, door de functie <code>lowerChar<\/code> voor elk karakter aan te roepen. We stellen voor dat als volgt te doen:<\/p>\n<ul>\n<li>begin met het kopi\u00ebren van de definitie van <code>lowerChar(char)<\/code> uit het eerste deel<\/li>\n<li>schrijf dan een tweede functie, <code>lowerString(string)<\/code>\n<ul>\n<li>op de eerste regel van lowerString, definieer een variabele <code>result = \"\"<\/code> en maak deze gelijk aan de lege string<\/li>\n<li>gebruik een <a href=\"\/7c-loops-nl\/\">for-lus<\/a> met <code>i<\/code> en neem op <code>result = result + lowerChar(string[i])<\/code><\/li>\n<li>zorg er tenslotte voor dat <code>result<\/code> wordt teruggegeven<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p><form class=\"pbform\" action=\"#\" id=\"pbform1\" method=\"POST\">\n<div class='pybox modeNeutral ' id='pybox1'>\n<img title='You have not yet completed this problem.' src='https:\/\/cscircles.cemc.uwaterloo.ca\/dev\/wp-content\/plugins\/pybox\/files\/icon.png' class='pycheck'\/><div class=\"heading\"><span class='type'>Coding Exercise: <\/span><span class='title'>Lower-case Strings<\/span><\/div>Schrijf een functie <code>lowerString(string)<\/code> die als resultaat de omzetting van de <code>string<\/code> in kleine letters teruggeeft.<div class=\"helpOuter\" style=\"display: none;\"><div class=\"helpInner\"><div style=\"text-align: center\">You need to create an account and log in to ask a question.<\/div><\/div><\/div><div class='pyboxTextwrap pyboxCodewrap RW resizy'  style='height: 526px;'><textarea wrap='off' name='usercode1' id='usercode1'  cols=10 rows=20   class='pyboxCode RW'>\n# first, copy your definition of lowerChar() here\n# then define lowerString(string)\n<\/textarea><\/div>\n<div id='pbhistory1' class='flexcontain' style='display:none;'><\/div>\n<div name=\"pyinput\" id=\"pyinput1\">Enter testing statements like <code>print(myfunction(\"test argument\"))<\/code> below.<div class=\"pyboxTextwrap resizy\" style=\"height: 102px;\" ><textarea wrap=\"off\" name=\"userinput\" class=\"pyboxInput\" cols=10 rows=4><\/textarea><\/div><\/div>\n<input type='hidden' id='defaultCode1' value='# first, copy your definition of lowerChar() here\\n# then define lowerString(string)\\n'><\/input>\n<div class='pyboxbuttons'><table><tr>\n<td><input type='submit' name='submit' id='submit1' value=' '\/><\/td>\n<td><input type='button' name='switch' id=\"switch1\" value=\"Input Switch\" onclick=\"pbInputSwitch(1,'Y')\" ><\/td>\n<td><input type='button' name='consolecopy' value=\"Open in console\" onclick=\"pbConsoleCopy(1)\" ><\/td>\n<td><input type='button' name='visualize' value=\"Visualize\" onclick=\"pbVisualize(1,'Y')\" ><\/td>\n<\/tr><\/table><select id='pbSelect1' class='selectmore'><option name='more'>More actions...<\/option>\n<option name='history' data-pbonclick=\"historyClick(1,'11a.lowerstring')\" >History<\/option>\n<option name='default' data-pbonclick=\"pbSetText(1,descape($('#defaultCode1').val()))\" >Reset code to default<\/option>\n<option name='help' data-pbonclick=\"helpClick(1);\" >Help<\/option>\n<\/select><\/div>\n<input type=\"hidden\" name=\"lang\" value=\"\"\/><input type=\"hidden\" id=\"inputInUse1\" name=\"inputInUse\" value=\"Y\"\/>\n<input type=\"hidden\" name=\"pyId\" value=\"1\"\/>\n<input type=\"hidden\" name=\"hash\" value=\"21f7e22a37bec66b3333ff8dd15b1fc6\"\/>\n<div id='pbresults1' class='pbresults avoidline'><\/div>\n<\/div>\n<\/form>\n<script type='text\/javascript'>jQuery(function(){pbToggleCodeMirror(1);});pbInputSwitch(1,\"Y\");<\/script>\n<\/p>\n<p><table class='pywarn'><tr><td class='pywarnleft'><img src='https:\/\/cscircles.cemc.uwaterloo.ca\/dev\/wp-content\/plugins\/pybox\/files\/warning.png'\/><\/td><td class='pywarnright'><span> Later zul je <code>string.lower()<\/code> leren kennen, wat een ingebouwd element is van Python en een string omzet naar een string met alleen kleine letters. <\/span><\/td><\/table><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Les 11 heeft drie delen A, B, C die in elke willekeurige volgorde kunnen worden doorgewerkt. Deze les bevat een oefening waarbij je twee functies dient te schrijven: in de ene zal de andere worden gebruikt om het doel te &hellip; <a href=\"https:\/\/cscircles.cemc.uwaterloo.ca\/dev\/11a-lower-case-nl\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-6127","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/cscircles.cemc.uwaterloo.ca\/dev\/wp-json\/wp\/v2\/pages\/6127","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cscircles.cemc.uwaterloo.ca\/dev\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/cscircles.cemc.uwaterloo.ca\/dev\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/cscircles.cemc.uwaterloo.ca\/dev\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/cscircles.cemc.uwaterloo.ca\/dev\/wp-json\/wp\/v2\/comments?post=6127"}],"version-history":[{"count":22,"href":"https:\/\/cscircles.cemc.uwaterloo.ca\/dev\/wp-json\/wp\/v2\/pages\/6127\/revisions"}],"predecessor-version":[{"id":11212,"href":"https:\/\/cscircles.cemc.uwaterloo.ca\/dev\/wp-json\/wp\/v2\/pages\/6127\/revisions\/11212"}],"wp:attachment":[{"href":"https:\/\/cscircles.cemc.uwaterloo.ca\/dev\/wp-json\/wp\/v2\/media?parent=6127"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}