Reptes
Repte 9 — Les files alternes ★★ Intermedi
El fons marí d'en Karel és un rectangle buit. La seva missió: omplir de
perles totes les files parells (la primera fila per baix, la tercera
per baix, etc.) i deixar buides les files senars.
En Karel comença a la cantonada inferior esquerra mirant cap a l'Est. El resultat final ha de ser un patró de franges horitzontals: files amb perles alternant amb files buides.
La teva feina: escriu un programa que funcioni per a qualsevol rectangle, sigui quina sigui l'amplada i l'alçada. El teu codi no pot dependre del nombre de caselles.
En Karel comença a la cantonada inferior esquerra mirant cap a l'Est. El resultat final ha de ser un patró de franges horitzontals: files amb perles alternant amb files buides.
La teva feina: escriu un programa que funcioni per a qualsevol rectangle, sigui quina sigui l'amplada i l'alçada. El teu codi no pot dependre del nombre de caselles.
💡 Pista — el recorregut en serpentí
omple_fila() deixa una perla a cada casella fins al final de la fila.
Funciona igual cap a l'Est que cap a l'Oest perquè front_is_clear() és
agnòstic de la direcció. Quan la fila s'acaba, en Karel és a un extrem del món.
💡 Pista — saltar una fila
Després d'omplir una fila, en Karel ha de pujar dues files: una per
saltar la fila buida i una altra per arribar a la que toca omplir. El gir de transició
depèn de la direcció: des de l'Est, fes
turn_left(); move(); turn_left()
per pujar i girar a l'Oest. Des de l'Oest, fes turn_right(); move(); turn_right()
per pujar i girar a l'Est.