Aliens!! Help Ruby met begrijpen van deze vreemde wezens!
Debuggen: Begrijp jij de alien
Het eindresultaat
Project
In dit project hebben wij een kleine scène gemaakt waarin Ruby probeert te praten met een alien. Alleen lukt dat niet zo goed. Er zitten namelijk een paar foutjes in de vertaling. Bekijk en verbeter de code zodat je de laatste zin van de alien kan begrijpen.
Dit zijn de volgende dingen die je moet doen:
- Vind drie fouten!
- Eén fout los je op door twee blokjes van plaats te wisselen.
- Voor de twee andere fouten moet je telkens een blokje toevoegen om dit op te lossen.
Stappenplan
Stap 1: Voer het project eens uit
Vooraleer je ook maar weet wat de fouten zijn, moet je eerst het verhaal eens afspelen. Schrijf op wat je vreemd vindt.
Stap 2: Vragen stellen
Nadat je het verhaal eens hebt bekeken, valt op dat de laatste zin van de alien allemaal dezelfde letters zijn. Dit moet eigenlijk een zin zijn. Dit zijn een aantal vragen die je jezelf kan stellen:
- Hoe kan het dat dat allemaal dezelfde letters zijn?
- Is er iets mis met het decoderen van de zin?
- Hoe werkt dit decoderen precies?
- Wat betekenen en doen al die variabelen?
- Wat doen al die tests?
- Heb ik dit probleem al eens eerder opgelost? In een andere oefening misschien?
Stap 3: Zoeken en oplossen
Door vragen te stellen leren we het project, het verhaal en de code beter begrijpen. Nu kunnen we gaan zoeken naar de fouten en deze oplossen.
Fout 1:
- Kijk in het Decodeer-blokje.
- Wat doet de variabele positie?
- Duidt die positie van een letter aan?
- Duidt die steeds een nieuwe positie van een letter aan?
Fout 2:
- Kijk in de Decodeer-blokje.
- Wat gebeurt er met de vertaalde zin wanneer een letter van de zin in het alfabet zit?
- Wat gebeurt er met de vertaalde zin wanneer een letter van de zin niet in het alfabet zit?
- Is dit correct?
Fout 3:
- Kijk in het “zoek plaats”-blokje.
- Wat doet de variabele zoekpositie?
- Kijk eens naar de waarde van deze variabele. DIt kan je doe door in het palet Variabelen de variabele zoekpositie aan te vinken.
- Wat gebeurt daar? Wat loopt er mis?
Evaluatie
Tijd om alles nog eens te testen om zeker te zijn dat alles goed werkt.
- Begrijp jij de laatste zin van de alien?
Oplossing
De oplossing vind je hier!
Wat een vriendelijke alien. Jammer dat Unix dit heeft moeten missen. Tijd voor een volgende oefening!