π
<-

Exercice de dm

Discussions scientifiques et scolaires

Exercice de dm

Message non lude Kadjil » 09 Jan 2016, 19:06

Bonjour
Mon prof de math ma donner un exercice de dm sur un programme qui est plutôt costaud (avec le modeste niveau que j'ai en programmation) et que je n'ai pas l'habitude de voir en cours.

Voici l'énoncé :

Préambule - Dans et exercice, on ne demande aucun calcul effectif. Il s'agit seulement d'une occasion, donnée par une situation fort discutable, d'écrire un petit algorithme.
Pour le réveillon de la Saint Sylvestre, Barnabé souhaite distraire l'assemblée pléthorique qu'il a conviée. Aussi a-t-il
conçu un jeu de hasard des plus alléchants.
Le joueur est positionné sur un petit siège éjectable qui
coulisse le long d'un rail.
À l'une des extrémités du rail (en position 2), se trouve une piscine remplie de Champagne.
À l'autre extrémité (en position -3), se trouve une piscine de stockage des eaux usées.
Ce siège avance d'un mètre avec une probabilité égale à 1/3 , sinon, il recule d'un mètre.
Chaque déplacement est indépendant du précédent.
Le jeu s'arrête si le siège se retrouve en position 2 ou en -3 et le joueur est alors éjecté
dans la piscine attenante.
Écrire un programme simulant ce jeu, qui aaffichera "CHAMPAGNE" ou "EAUX
USÉES" en sortie.
Ce programme fournit-il a priori toujours un résultat ?


Pour résumé le siège avance de 1 (avec une proba de 1/3) et recule de 1 (avec une proba de 2/3). Le jeu (si on peut appeler sa un jeu ^^) s'arrête à -3 ou 2.
J'avais pensé à une boucle tant que A est plus grand que -3 et plus petit que 2, mais j'arrive pas à faire des proba sur la calculatrice.
Pouvez vous m'aider ?
Dernière édition par Kadjil le 10 Jan 2016, 09:28, édité 1 fois.
Avatar de l’utilisateur
Kadjil
Niveau 7: EP (Espèce Protégée: geek)
Niveau 7: EP (Espèce Protégée: geek)
Prochain niv.: 1.6%
 
Messages: 15
Inscription: 09 Jan 2016, 19:03
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: Terminale S

Re: Exercice de dm

Message non lude critor » 09 Jan 2016, 21:38

Dès qu'il y a répétition oui, c'est une boucle. :)

Utilise la commande NbrAléat que tu trouves dans :f41: :f24:.

Elle te tire un nombre au hasard selon une loi uniforme sur [0;1].
Il te suffit donc de tester si NbrAléat<1/3. :)
Image
Avatar de l’utilisateur
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Prochain niv.: 54.4%
 
Messages: 42496
Images: 17334
Inscription: 25 Oct 2008, 00:00
Localisation: Montpellier
Genre: Homme
Calculatrice(s):
MyCalcs profile
YouTube: critor3000
Twitter/X: critor2000
GitHub: critor

Re: Exercice de dm

Message non lude Kadjil » 10 Jan 2016, 09:45

Donc voilà mon programme qui ne marche pas --"

Code: Tout sélectionner
0->A
0->B
While -3<B<2
(NbrAléat<1/3)->A
If A=0
Then
-1->A
If A=1
Else
1->A
End
A+B->B
End
If B=-3
Then
Disp "eaux ussée"
If B=2
Else
Disp "Champagne"
End

La calculatrice tourne en boucle sans afficher de résultats.
Avatar de l’utilisateur
Kadjil
Niveau 7: EP (Espèce Protégée: geek)
Niveau 7: EP (Espèce Protégée: geek)
Prochain niv.: 1.6%
 
Messages: 15
Inscription: 09 Jan 2016, 19:03
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: Terminale S

Re: Exercice de dm

Message non lude Hamza.S » 10 Jan 2016, 10:35

pourquoi ces lignes se suivent?
Code: Tout sélectionner
If A=1
Else


Code: Tout sélectionner
If B=2
Else
Image
Avatar de l’utilisateur
Hamza.SAdmin
Niveau 17: GM (Grand Maître des calculatrices)
Niveau 17: GM (Grand Maître des calculatrices)
Prochain niv.: 29.3%
 
Messages: 4513
Images: 18
Inscription: 07 Nov 2014, 00:43
Genre: Homme
Calculatrice(s):
MyCalcs profile

Re: Exercice de dm

Message non lude Kadjil » 10 Jan 2016, 11:52

Bah j'avais mis un end à la fin de la première série de if, donc je pensai que c'était bon.
Avatar de l’utilisateur
Kadjil
Niveau 7: EP (Espèce Protégée: geek)
Niveau 7: EP (Espèce Protégée: geek)
Prochain niv.: 1.6%
 
Messages: 15
Inscription: 09 Jan 2016, 19:03
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: Terminale S

En ligne

Re: Exercice de dm

Message non lude noelnadal » 10 Jan 2016, 16:04

J'ai modifié deux choses :

1) La condition pour le while n'était pas bonne. Il faut séparer les deux inégalités, sinon l'interpréteur comprend autre chose : si B = 4 par exemple, alors "-3<B" renvoie 1, et donc "-3<B<2" devient "1<2" ce qui est vrai, alors que ça devrait renvoyer faux.

2) La syntaxe pour le If est : If ... Then ... Else ... End. Pas besoin de rajouter un "If A=1" avant le Else.

Code: Tout sélectionner
0->A
0->B
While -3<B and B<2
(NbrAléat<1/3)->A
If A=0
Then
-1->A
Else
1->A
End
A+B->B
End
If B=-3
Then
Disp "eaux usées"
Else
Disp "Champagne"
End


C'est optimisable dans le sens où ça pourrait tenir en moins de lignes, mais normalement ce programme fonctionne.
Dernière édition par noelnadal le 10 Jan 2016, 16:31, édité 1 fois.
Avatar de l’utilisateur
noelnadalEcrivain
Niveau 17: GM (Grand Maître des calculatrices)
Niveau 17: GM (Grand Maître des calculatrices)
Prochain niv.: 40.9%
 
Messages: 2271
Images: 0
Inscription: 10 Mar 2011, 00:00
Localisation: France, Melun (77)
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: INRIA Paris
Twitter/X: nadalnoel
Facebook: noel.nadal1
GitHub: noelnadal

Re: Exercice de dm

Message non lude Hamza.S » 10 Jan 2016, 16:12

Code: Tout sélectionner
(NbrAléat<1/3)->A

cette ligne renvoie 0 ou 1
donc j'ai fait ça
Code: Tout sélectionner
0->A
0->B
While -3<B and B<2
(NbrAléat<1/3)->A
If A=0
-1->A
A+B->B
If B=-3
Disp "eaux usées
If B=2
Disp "Champagne
End

(merci noelnadal pour la correction du While)
Image
Avatar de l’utilisateur
Hamza.SAdmin
Niveau 17: GM (Grand Maître des calculatrices)
Niveau 17: GM (Grand Maître des calculatrices)
Prochain niv.: 29.3%
 
Messages: 4513
Images: 18
Inscription: 07 Nov 2014, 00:43
Genre: Homme
Calculatrice(s):
MyCalcs profile

Re: Exercice de dm

Message non lude Kadjil » 10 Jan 2016, 16:18

Merci à vous 2, le programme marche à présent.
Par contre le programme de noelnadal marquer eaux usées et champagne dans le cas où il tombait dans l'eau usées.
Mais ton programme fonctionne Hamza.S merci :)
Avatar de l’utilisateur
Kadjil
Niveau 7: EP (Espèce Protégée: geek)
Niveau 7: EP (Espèce Protégée: geek)
Prochain niv.: 1.6%
 
Messages: 15
Inscription: 09 Jan 2016, 19:03
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: Terminale S

En ligne

Re: Exercice de dm

Message non lude noelnadal » 10 Jan 2016, 16:31

Oui, c'était le même problème avec le Else et le If, je ne l'avais pas remarqué.
Avatar de l’utilisateur
noelnadalEcrivain
Niveau 17: GM (Grand Maître des calculatrices)
Niveau 17: GM (Grand Maître des calculatrices)
Prochain niv.: 40.9%
 
Messages: 2271
Images: 0
Inscription: 10 Mar 2011, 00:00
Localisation: France, Melun (77)
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: INRIA Paris
Twitter/X: nadalnoel
Facebook: noel.nadal1
GitHub: noelnadal


Retourner vers Maths, physique, informatique et autre...

Qui est en ligne

Utilisateurs parcourant ce forum: ClaudeBot [spider] et 19 invités

-
Rechercher
-
Social TI-Planet
-
Sujets à la une
Ndless for CX 4.5.5 / CX II 6.2.0
Comparaisons des meilleurs prix pour acheter sa calculatrice !
"1 calculatrice pour tous", le programme solidaire de Texas Instruments. Reçois gratuitement et sans aucune obligation d'achat, 5 calculatrices couleur programmables en Python à donner aux élèves les plus nécessiteux de ton lycée. Tu peux recevoir au choix 5 TI-82 Advanced Edition Python ou bien 5 TI-83 Premium CE Edition Python.
Enseignant(e), reçois gratuitement 1 exemplaire de test de la TI-82 Advanced Edition Python. À demander d'ici le 31 décembre 2024.
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
12345
-
Faire un don / Premium
Pour plus de concours, de lots, de tests, nous aider à payer le serveur et les domaines...
Faire un don
Découvrez les avantages d'un compte donateur !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partenaires et pub
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
2503 utilisateurs:
>2473 invités
>22 membres
>8 robots
Record simultané (sur 6 mois):
32248 utilisateurs (le 01/09/2025)
-
Autres sites intéressants
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)