22 mai 2022
Cet exercice a pour objectif de vous montrer comment entrer dans du code existant.
Il vous propose d’enrichir un mini-interprêteur de langage Logo fourni dans Logo.zip (à exploiter selon la procédure cmake
de ce document]).
Une fois que vous avez tout généré, si vous lancez l’exécution de logo.exe
, le terminal vous affiche :
logo file delay
file: Path of the logo program to run
delay: Delay to allow the user to see how the turtle moves [s]
Sortie de C:\temp\Logo\out\build\x64-Debug\logo\logo.exe (processus 16132). Code : 1.
Dit autrement, ce programme nécessite deux arguments sur la ligne de commande : 1. le nom du programme logo à interpréter. 2. le délai (exprimé en secondes) pour permettre à l’utilisateur de voir la tortue se déplacer.
La section suivante explique comment spécifier ces deux arguments.
Nous souhaitons que logo.exe
interprète le programme prog0.logo
avec un délai d’une seconde.
launch.vs.json
contenant :{
"version": "0.2.1",
"defaults": {},
"configurations": [
{
"type": "default",
"project": "CMakeLists.txt",
"projectTarget": "logo.exe (logo\\logo.exe)",
"name": "logo.exe (logo\\logo.exe)"
}
]
}
{
"version": "0.2.1",
"defaults": {},
"configurations": [
{
"type": "default",
"project": "CMakeLists.txt",
"projectTarget": "logo.exe (logo\\logo.exe)",
"name": "logo prog0.logo",
"args": ["resources/prog0.logo", 1]
}
]
}
logo.exe (logo\logo.exe)
: Un menu déroulant s’affiche.logo prog0.logo
et cliquez sur la flèche verte.logo
, spécifiez resources/prog0.logo 1
dans le champ “Program arguments”Ce mini-interpréteur logo accepte la définition de procédures (pour le vérifier, exécutez logo
sur prog1.logo
en mettant le délai à 0
au lieu de 1
si vous voulez que le dessin se fasse plus vite).
Modifiez ce mini-interpréteur logo pour que :
REPETE
(cf. resources/prog2.logo
).SVG
(Comme il y a du code mal écrit, cela suppose que vous restructuriez le code).NB : Avant de vous lancer dans ces modifications, il est recommandé :