bonjour,
j ai ce programme sous scratch qui dessine une frise
"quand drapeau cliqué
effacer tout
stylo en position d'écriture
répéter dix fois
avancer de 10
tourner dans le sens trigo de 90°
avancer de 30
tourner dans le sens des aiguilles d'une montre de 90°
avancer de 20
tourner dans le sens des aiguilles d'une montre de 90°
avancer de 10
tourner dans le sens des aiguilles d'une montre de 90°
avancer de 10
tourner dans le sens trigo de 90°
avancer de 20
tourner dans le sens trigo de 90°
avancer de 10
fin-répéter-dix_fois
"
Il est demandé d'adapter ce programme pour que la frise ait une taille
décroissante.
j'avais pensé à définir un facteur k de réduction
qui passerait de 0.9 à 0.8 puis un pas de -0.1
et remplacer toutes les instruction "avancer de 10" par "avancer de 10*k"
mais ça ne marche pas.
Avez vous des idées ?
merci pour l'aide.
Bonjour,
le plus simple est effectivement de mettre partout "valeur * k" au lieu de la valeur indiquée
et de faire diminuer k à la fin de chaque boucle
ça fonctionne très bien :
en multipliant k par 0.9
en retranchant 0.1 à k
à toi de voir pour choisir le facteur de réduction ou la façon dont diminue k
si ça ne fonctionne pas, c'est peut être dans les détails de ta traduction effective de cette méthode avec k
donne ton algorithme modifié
osté par tanx 16-11-17 à 10:10
bonjour,
j ai ce programme sous scratch qui dessine une frise
"quand drapeau cliqué
effacer tout
stylo en position d'écriture
attrribuer à k la valeur 1
répéter dix fois
avancer de 10 *k
tourner dans le sens trigo de 90°
avancer de 30 *k
tourner dans le sens des aiguilles d'une montre de 90°
avancer de 20 *k
tourner dans le sens des aiguilles d'une montre de 90°
avancer de 10 *k
tourner dans le sens des aiguilles d'une montre de 90°
avancer de 10 *k
tourner dans le sens trigo de 90°
avancer de 20 *k
tourner dans le sens trigo de 90°
avancer de 10 *k
attribuer à k la valeur k-0,1
fin-répéter-dix_fois
"
peut être bien qu'il faut écrire 0.1 et pas 0,1 (point décimal anglo-saxon et pas virgule décimale française)
en fait chez moi si je tape 0,1 (virgule) il ignore complètement la virgule et comprend 01 c'est à dire 1
ce qui donne k = 0 au premier tour et ensuite des déplacements négatifs de plus en plus négatifs et donc des gribouillis
ma deuxième frise est exactement ton script avec k-0.1 (point décimal)
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :