Votre objectif est de remplir la première ligne du monde de Karel avec des beepers. Vous pouvez supposer qu'initialement, Karel commence au coin inferieur gauche de son monde et fait face a l'Est. Un exemple du déroulement de votre programme est illustré ci-dessous:

Avant

Après

Votre programme devrait aussi marcher pour des mondes de différente tailles. Par exemple, si nous executon le même programme sur un monde un peu plus grand, comme celui ci-dessous, Karel devrait toujours pouvoir placer une ligne de beepers sans erreur. Cela signifie que nous ne pouvons pas utiliser une bouple "pour" ("for" loop), car nous ne conaissons pas la taille du monde de Karel a l'avance.

Avant

Après

Solution

/*
* Programme: LigneDeBeepers
* ----------
* Placer des beepers sur toute la premiere ligne du monde de Karel.
* Suppose que Karel commence dans le coin inférieur gauche et fait face a l'Est.
*/

import stanford.karel.SuperKarel;

public class LigneDeBeepers extends SuperKarel {
	
	public void run() {
		while(frontIsClear()) {
			putBeeper();
			move();
		}
		
		// La ligne de code suivante est nécessaire pour placer le beeper final.
		// A chaque iteration, Karel place un beeper dans la cellule courante 
		// et se déplace pour la cellule suivante.
		// Cette ligne de code place un beeper dans la derniere
		// cellule dans laquelle Karel s'est positioné.
		putBeeper();
	}

}