Inscription / Connexion Nouveau Sujet
Niveau seconde
Partager :

Algorithme et boucles...

Posté par
Camilloo
20-04-15 à 12:32

Bonjour,
Voilà une semaine que j'essaie de trouver une solution à mon DM d'algorithme :

"Sébastien veut un algorithme qui simule un certain nombre de fois le lancer d'un dé
- Il doit lui demander le nombre de faces du dé. Il doit vérifier que c'est bien 4 au minimum.
- Il doit demander le nombre de lancers
- Il affiche alors les résultats de ces lancers de dé"

Écrire en langage courant l'algorithme qui convient et le tester sur Algobox

Il y a une seconde partie:

"Pour aller plus loin, modifier ensuite l'algorithme pour qu'il n'affiche pas le nombre mais "Gagné" si c'est le nombre maximum du dé, ou "Perdu" si c'est un autre nombre"

Pour le moment, sur Algobox, j'aboutis juste à ça et je suis complètement bloquée:

Algorithme et boucles...

Posté par
Glapion Moderateur
re : Algorithme et boucles... 20-04-15 à 12:44

Bonjour,
si tu demandes le nombre de lancés et que le mets dans une variable L, c'est pas pour changer la valeur de L la ligne après !
Prends une autre variable pour simuler la valeur du lancé de dés ou mets un AFFICHERCALCUL devant.
ALGOBOX_ALEA_ENT(1,Faces_dés) va tirer un nombre entier aléatoire entre 1 et Faces_dés (il faut lui mettre des arguments à cette fonction !)

pour simuler L lancés, il faut que tu mettes une boucle Pour I allant de 1 à L
il faut également que tu affiches les résultats.

continue !

Posté par
Camilloo
re : Algorithme et boucles... 20-04-15 à 13:24

Comme ça??


1   VARIABLES
2     L EST_DU_TYPE NOMBRE
3     Faces_dés EST_DU_TYPE NOMBRE
4     Valeur_lancer_dé EST_DU_TYPE NOMBRE
5   DEBUT_ALGORITHME
6     LIRE Faces_dés
7     SI (Faces_dés>=4) ALORS
8       DEBUT_SI
9       POUR Valeur_lancer_dé ALLANT_DE 1 A L
10        DEBUT_POUR
11        LIRE L
12        Valeur_lancer_dé PREND_LA_VALEUR ALGOBOX_ALEA_ENT(1,Faces_dés)
13        FIN_POUR
14      FIN_SI
15    AFFICHER Valeur_lancer_dé
16  FIN_ALGORITHME

Posté par
Glapion Moderateur
re : Algorithme et boucles... 20-04-15 à 13:36

non, tu ne peux pas mettre une boucle Pour Valeur_lancer_dé ALLANT_DE 1 A L et puis à l'intérieur de la boucle changer aléatoirement la valeur de ta variables ! on voit que tu ne l'as pas essayé ton algorithme
et puis tu mets un Pour Valeur_lancer_dé ALLANT_DE 1 A L alors que L n'a pas encore de valeur, comment veux tu qu'algobox arrive à executer ça ?

(tu peux le copier/coller dans algobox en mode éditeur de texte, ou bien directement en ligne dans proglab )


VARIABLES 
L EST_DU_TYPE NOMBRE
I EST_DU_TYPE NOMBRE
Faces_dés EST_DU_TYPE NOMBRE 
Valeur_lancer_dé EST_DU_TYPE NOMBRE 
DEBUT_ALGORITHME 
LIRE Faces_dés 
SI (Faces_dés >= 4) ALORS 
DEBUT_SI 
LIRE L 
 POUR I ALLANT_DE 1 A L 
 DEBUT_POUR 
   Valeur_lancer_dé PREND_LA_VALEUR ALGOBOX_ALEA_ENT(1,Faces_dés) 
   AFFICHER* Valeur_lancer_dé 
 FIN_POUR 
FIN_SI 
FIN_ALGORITHME

Posté par
Camilloo
re : Algorithme et boucles... 20-04-15 à 14:18

Ah ok! Ben oui c'était pas logique !
Mais le résultat c'est la valeur de chaque lancer??


Et du coup, pour la suite je raccorde au pour et je mets une condition?

Posté par
Glapion Moderateur
re : Algorithme et boucles... 20-04-15 à 16:48

propose quelque chose

Posté par
Camilloo
re : Algorithme et boucles... 20-04-15 à 20:26

J'ai esssayé mais je ne comprends pas pourquoi il met tout le temps gagné quand je le teste.

1   VARIABLES
2     L EST_DU_TYPE NOMBRE
3     I EST_DU_TYPE NOMBRE
4     Faces_dés EST_DU_TYPE NOMBRE
5     Valeur_lancer_dés EST_DU_TYPE NOMBRE
6   DEBUT_ALGORITHME
7     LIRE Faces_dés
8     SI (Faces_dés>=4) ALORS
9       DEBUT_SI
10      LIRE L
11      POUR I ALLANT_DE 1 A L
12        DEBUT_POUR
13        Valeur_lancer_dés PREND_LA_VALEUR ALGOBOX_ALEA_ENT(1,Faces_dés)
14        SI (Valeur_lancer_dés=ALGOBOX_MAXIMUM(Faces_dés)) ALORS
15          DEBUT_SI
16          AFFICHER "Gagné"
17          FIN_SI
18          SINON
19            DEBUT_SINON
20            AFFICHER "Perdu"
21            FIN_SINON
22        FIN_POUR
23      FIN_SI
24  FIN_ALGORITHME

Posté par
Glapion Moderateur
re : Algorithme et boucles... 21-04-15 à 00:01

ALGOBOX_MAXIMUM(Faces_dés)) c'est le maximum des termes d'une liste. tu n'as pas de liste ici !

SI (Valeur_lancer_dés == Faces_dés ) ALORS

Posté par
Camilloo
re : Algorithme et boucles... 21-04-15 à 10:17

Oui c'est vrai!

Merci beaucoup pour votre aide!



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 1730 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 !