Inscription / Connexion Nouveau Sujet
Niveau seconde
Partager :

Boucle Tant Que.Algorithmes

Posté par
cykedy
18-05-14 à 12:58

Bonjour,
j'ai un problème avec un TP de math.
Voilà le code de l'algorithme:
VARIABLES
  D est du type nombre
DEBUT _ ALGORITHME
-D prend la valeur floor(6*random0)+1
- Afficher D
FIN_  ALGORIRTHME

Les questions sont:
1°) Que fait l'algorithme suivant?
J'ai répondu que c'était de simuler le lancer d'un dé équilibré à 6 faces.
2°) L'améliorer pour obtenir n lancers d'un dé équilibré.
3°) Améliorer le précédent pour obtenir la somme S des numéros obtenus lors de n lancers.
4°)Compléter et corriger si nécessaire l'algorithme suivant de manière à ce qu'il donne le nombre de lancers nécessaires avant l'apparition du premier 6 lors des lancers successifs et indépendants d'un dé équilibré.
Variables:D est du type nombre
k est du type nombre

Initialisation:
D prend la valeur 0
k prend la valeur 0

Traitement: Tant que D est différent de 6 Faire

               Affecter à D un entier aléatoire entre 1 et 6
             Fin Tant que
             Affecter k+1 à k
Sortie: Afficher D. Afficher k
N.B: J'ai mis en italiques mes réponses
Voilà, je ne sais pas si ma question 4 est juste et c'est surtout les question 2 et 3 qui me posent problème.
Si quelqu'un pouvait m'aider, ce serait gentil.
Merci d'avance

Posté par
cykedy
re : Boucle Tant Que.Algorithmes 18-05-14 à 13:57

Il n'y a personne qui peut m'aider,svp?
Merci d'avance

Posté par
david9333
re : Boucle Tant Que.Algorithmes 18-05-14 à 14:42

Salut !

2. Pour obtenir n lancers, il faut simplement répéter l'algorithme n fois. Pour cela, on peut utiliser une boucle for (Pour ?) :
VARIABLES
  D est du type nombre
  k est du type nombre
DEBUT _ ALGORITHME
Pour k allant de 1 à n Faire
     -D prend la valeur floor(6*random0)+1
      - Afficher D
Fin Pour
FIN_  ALGORIRTHME

3. Pour obtenir la somme des numéros obtenus, il faut en plus avoir une sorte de "compteur" : il est nul initialement et à chaque étape, on rajoute le résultat du dé obtenu à notre compteur. Qu'est-ce que tu pourrais écrire comme algorithme avec cette indication ?

4. L'instruction "Affecter k+1 à k" doit se situer dans la boucle TantQue, sinon elle n'est exécutée qu'une fois et elle ne sert à rien... Puis, pas la peine d'afficher D à la fin, ce qui nous intéresse c'est seulement k.

Posté par
cykedy
re : Boucle Tant Que.Algorithmes 18-05-14 à 18:35

Merci pour la réponse je pense qu'il faut mettre une boucle tant que dans la boucle pour mais je ne sais pas comment m'y prendre

Posté par
Glapion Moderateur
re : Boucle Tant Que.Algorithmes 18-05-14 à 18:44

non pourquoi faire ? tu as déjà une boucle Pour k allant de 1 à n qui remplit bien son rôle.

maintenant tu veux totaliser la somme des dés. Donc tu initialises une variable S à 0 avant la boucle puis dans la boucle tu rajoute une instruction S prend la valeur S+D
et en sortie de boucle tu mets un afficher S (et tu peux enlever le Afficher D à l'intérieur de la boucle qui ne sert plus à rien).

Les boucles TantQue, ça sert que quand on ne sait pas le nombre de lancés que l'on va faire à priori (par exemple ici si on nous disait de recommencer les lancés tant qu'un 6 n'est pas sorti, là on serait obligé de mettre une boucle TantQue à la place du Pour k allant de 1 à n. ça va servir à la question 4 par exemple )

Posté par
cykedy
re : Boucle Tant Que.Algorithmes 18-05-14 à 19:49

donc si j'ai bien compris l'algorithme devrait être comme cela:

Variables
D est du type nombre
k est du type nombre
S est du type nombre

Début _Algorithme
S prend la valeur 0
Pour K allant de 1 à n Faire
D prend la valeur floor(6*random())+1
S Prend la valeur de S+D
Afficher D
Afficher S
Fin Pour
Fin_ algorithme

Posté par
Glapion Moderateur
re : Boucle Tant Que.Algorithmes 18-05-14 à 22:06

Plutôt le Afficher S après le finPour et pas de Afficher D

Posté par
cykedy
re : Boucle Tant Que.Algorithmes 18-05-14 à 22:40

Merci beaucoup pour ton aide.
Bonne soirée

Posté par
Glapion Moderateur
re : Boucle Tant Que.Algorithmes 19-05-14 à 14:26

Et donc tu es arrivé à faire l'algorithme avec un TantQue pour la dernière question ?



Vous devez être membre accéder à ce service...

Pas encore inscrit ?

1 compte par personne, multi-compte interdit !

Ou identifiez-vous :


Rester sur la page

Inscription gratuite

Fiches en rapport

parmi 1741 fiches de maths

Désolé, votre version d'Internet Explorer est plus que périmée ! Merci de le mettre à jour ou de télécharger Firefox ou Google Chrome pour utiliser le site. Votre ordinateur vous remerciera !