On lance un dé équilibré à 6 faces, numérotées de 1 à 6.
Proposer un algorithme qui affiche le rang de la première appartition de la face numérotée 6.
On a 2 instruction qu'on doit utiliser
Rand et int (nbraleat)
Je ne comprend pas comment faire j'aimerais de l'aide merci
Bonjour,
Il faut définir d'abord les variables qu'on va utiliser, par exemple :
-> résultat = chiffre affiché par le dé
-> rang = n° du lancer, qui prendra successivement les valeurs 1, 2, 3 ...
Ensuite, il faut utiliser une boucle soit de type :
Répéter ...
Jusqu'à résultat = 6
soit du type :
Tant que résultat 6
...
fin tant que
Enfin il faut afficher la variable rang.
On demande un algorithme, pas l'utilisation d'une instruction propre à un langage. Pour l'instruction "int", ça dépend :
-> avec une calculatrice, on tape int(51,2) et on obtient 51
-> avec le langage pascal, si on fait int(51,2) on obtient 51,0 (le résultat est de type réel)
S'il s'agit d'obtenir un entier aléatoire, il existe souvent une instruction directe dans les calculatrices et dans certains langages (comme algobox si j'ai bonne mémoire). S'il n'y a pas d'instruction directe, alors il faut combiner Rand (propre aux calculatrices Casio, je crois) avec la fonction int.
Si la question est bien "proposer un algorithme", alors il n'est nul besoin d'utiliser des mots comme int ou rand qui ne sont pas français.
Salut
Un exemple fait sur vba Excel
Do
P=int(rnd*6)+1
I=i+1
Loop until p=6
Msgbox i ' retourne le rang d apparition du premier 6 après i-1 lancés
Il faudrait que Ketianna nous dise si réellement on lui demande un algorithme (en français donc) ou si on lui demande un programme (en langage Python ou Casio ou ...).
La réponse proposée par flight ne répond pas vraiment à la question "afficher le rang de la première apparition du 6".
Il s agit s une boucle qui génére un entier entre 1 et 6 et tand que 6 n est pas sorti
Le compteur i continue de compter à chaque tour de boucle et ce jusqu a ce que p =6 une fois que 6 apparaît on obtient alors son rang donné justement par le compteur
àflight :
Ton programme en VBA va afficher (i-1) alors que le rang est i. (tu n'as pas initialisé i mais par défaut, VBA doit l'initaliser à 0)
Un autre inconvénient est que, pour le faire tourner, il faut utiliser Excel.
salut
il est dommage de ne pas savoir parler le français ...
un algorithme très naïf peut être :
initialiser rang
alea = 0
tant que alea <> 6
incrémenter rang
alea = nombre entier entre 1 et 6
afficher rang
ou avec al fonction répéter proposée par patrice rabiller
initialiser rang
alea = 0
répéter
incrémenter rang
alea = nombre entier entre 1 et 6
jusqu'à alea = 6
afficher rang
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :