Réaliser un programme informatique à même d'implanter les fontionalités d'un petit robot placé à l'intérieur d'une surface carrée.Polytor le petit rabot part initialement du point p0 = (0,0) et est orienté vers le haut(direction d=[0,20]).Il est placé à l'intérieur d'une zone carrée de 40m de côté(de x= -20m à x= 20m idem pour y).Cette zone est hermétiquement fermée par des mur infranchissables.Le robot peut être vu comme prenant la place d'un cylindre de 10cm de rayon. Polytor est capable de réaliser des déplacements basiques de 2 types: - on peut lui demander de faire une rotation.dans ce cas il tournera de 45° dans le sens positif. - il peut également avancer pendant un certain temps dans la direction courante à la vitesse constante de v=0.5m/s .s'il vien de rencontrer un mur, il reste simplement bloqué contre ce mur pour le reste du déplacement. Polytor lit les instructions de déplacement dans un fichier appelé instructions.txt .Chaque ligne contient une instruction.Les rotations sont signalées par le 0 et les déplacements en ligne droite sont de la forme 1 temps, où temps est le nombre de secondes pendant lesquelles Polytor devra avancer.Voici un exemple de fichier de déplacement: 1 1 1 4 0 1 5 0 0 0 1 3 On demande de lire sur le fichier les commandes du robot et d'afficher son déplacement total(position selon x et selon y à la fin du programme)ainsi que le nombre de fois que le robot a été bloqué(nombre d'ordres d'avancer qui n'ont pu être totalement exécutés).Le programme doit être découpé en fonctions, le main() devant être réduit au maximum.
Instructions du projet:ne pas utiliser les vecteurs,ni les classes!
Marsh Posté le 02-03-2004 à 00:20:13
Réaliser un programme informatique à même d'implanter les fontionalités d'un petit robot placé à l'intérieur d'une surface carrée.Polytor le petit rabot part initialement du point p0 = (0,0) et est orienté vers le haut(direction d=[0,20]).Il est placé à l'intérieur d'une zone carrée de 40m de côté(de x= -20m à x= 20m idem pour y).Cette zone est hermétiquement fermée par des mur infranchissables.Le robot peut être vu comme prenant la place d'un cylindre de 10cm de rayon.
Polytor est capable de réaliser des déplacements basiques de 2 types:
- on peut lui demander de faire une rotation.dans ce cas il tournera de 45° dans le sens positif.
- il peut également avancer pendant un certain temps dans la direction courante à la vitesse constante de v=0.5m/s .s'il vien de rencontrer un mur, il reste simplement bloqué contre ce mur pour le reste du déplacement.
Polytor lit les instructions de déplacement dans un fichier appelé instructions.txt .Chaque ligne contient une instruction.Les rotations sont signalées par le 0 et les déplacements en ligne droite sont de la forme 1 temps, où temps est le nombre de secondes pendant lesquelles Polytor devra avancer.Voici un exemple de fichier de déplacement:
1 1
1 4
0
1 5
0
0
0
1 3
On demande de lire sur le fichier les commandes du robot et d'afficher son déplacement total(position selon x et selon y à la fin du programme)ainsi que le nombre de fois que le robot a été bloqué(nombre d'ordres d'avancer qui n'ont pu être totalement exécutés).Le programme doit être découpé en fonctions, le main() devant être réduit au maximum.
Instructions du projet:ne pas utiliser les vecteurs,ni les classes!
---------------
Spikelly