Bonjour Bernard,
le flush marche bien. Mon polygone s'affiche après chaque appui sur une touche.
J'ai encore quelques soucis avec la boite de dialogue getKey :
je pense que la position d'affichage est un peu aléatoire ce qui fait que parfois elle n'apparaît pas dans la fenêtre xcas. Malgré tout elle prend les entrées clavier.
Quand elle est visible, je n'ai pas l'encadrement classique d'une fenêtre et c'est comme si elle était transparente, si je clic dessus, je tombe sur ce qu'il y a dessous. Pas moyen, donc, de la redimensionner pour voir mes phrase en entier.
Ci dessous un exemple où le bas de cette fenêtre est visible au dessus du bouton "sauve".
- screenshot_089.png (129.94 Kio) Consulté 4997 fois
Une autre curiosité (mais je suis spécialiste pour tomber sur des bugs incensés) :
dans le texte de mon programme :
Code : Tout sélectionner
polygone_tortue(n,r):={
// n représente le nombre de cotés du polygone régulier
// r le rayon du cercle circonscrit
local k;
efface;
repete n, avance(2*r*sin(180/n)), tourne_gauche(360/n);
}
:;
approx_pi():={
local n,c,r,p;
n:=5;
r:=100;
for(;;){
c:=getKey("q : stopper le programme","+ : augmente le nombre de côtés de 1","- : diminue le nombre de côtés de 1","* : multiplie le nombre de côtés par 2","/ : divise le nombre de côtés de 2");
switch(c){
case 43:{n++;} // +
case 45:{n--;} // -
case 42:{n:=n*2;} // *
case 47:{n:=floor(n/2);} // /
};
if (c==113) break;
polygone_tortue(n,r);afficher("Polygone à "&n&" côtés, longueur à pi="&evalf(pi-n*sin(180/n)));
}
}:;
j'ai la ligne :
Code : Tout sélectionner
afficher("Polygone à "&n&" côtés, longueur à pi="&evalf(pi-n*sin(180/n)));
où je n'ai jamais écrit le mot "longueur". Mais quand j'écris "distance", que je sauvegarde et que je rouvre le fichier, je me retrouve avec le mot "longueur"
A+