programme proba ti-82 stats |
Auteur |
Message |
aurelti82
Autorisation : Membre
Nb de messages : 5
Inscrit le : Mar 03 Juil 2012, 15:56
|
Posté le : Mar 03 Juil 2012, 16:08
|
|
|
Bonjour!
Je bosse depuis un petit bout de temps sur un programme et j'arrive toujours pas à trouver la réponse ... --' (bien qu'il ai l'air simple)
Une urne est composée de 50 jetons, dont 5 bleus, 15 blancs et 30 rouges.
Un joueur prend un jeton au hasard. Si le jeton est rouge, il reprend sa mise ; s'il est blanc, il remporte le carré de sa mise et s'il est bleu, il perd le cube de sa mise.(on note m sa mise)
Au départ, j'avais fait comme ça :
Prompt M
entAléat(1,50)-->A
If 1<A<=5
Then
Disp 0
Else
If 5<A<=20
Then
Disp M²
Else
If 20<A<=50
Then
Disp -M³
End
Le truc, c'est que là ça m'affiche les trois résultats alors qu'on en veut qu'un seul. Du coup je sais pas comment faire ... Heeeeeeeelp me!
|
|
|
|
Sangohan38
Autorisation : Membre
Nb de messages : 3370
Inscrit le : Sam 31 Déc 2005, 19:48
|
Posté le : Mar 03 Juil 2012, 16:18
|
|
|
Le programme est presque juste. Les erreurs sont dues aux conditions que la calculatrice interprète mal.
Essaye de mettre le programme comme ci-dessous:
Code | Prompt M
entAléat(1,50)-->A
If 1<=A and A<=5
Then
Disp "0"
Else
If 5<A and A<=20
Then
Disp M²
Else
If 20<A and A<=50
Then
Disp -M³
End |
D'ailleurs ton code est simplifiable en virant les Then/Else/End car une seule instruction suit les conditions (une ligne de code se réfère au if qui le précède).
Sangohan38
|
|
|
|
blg_flg
Autorisation : Membre
Nb de messages : 661
Inscrit le : Mer 23 Mai 2012, 17:28
|
Posté le : Mar 03 Juil 2012, 16:22
|
|
|
Je te propose ça, mais je ne suis pas sûr qu'on est au bon endroit pour ce topic:
A chaque fois il s'affiche la somme d'argent gagnée ou perdue.
Code | Lbl 1
Prompt M
entAléat(1,50->A
If A<=30
Disp 0
If A>30 et A<=35
Disp -M [au cube]
If A>35
Disp M [au carré]
Pause
Goto 1 |
En espérant ne pas m'être trompé dans l'énoncé.
ps: Je ne l'ai pas testé.
EDIT: Je vois qu'on a posté plus vite que moi...
|
|
|
|
Google_AdSense
|
Publicité
|
|
|
|
|
aurelti82
Autorisation : Membre
Nb de messages : 5
Inscrit le : Mar 03 Juil 2012, 15:56
|
Posté le : Mar 03 Juil 2012, 16:52
|
|
|
Le problème, c'est que avec ma calculatrice, j'ai pas de touche "and" ou "et". Du coup, je peux pas faire vos programmes ... :/
|
|
|
|
Samos
Autorisation : Membre
Nb de messages : 300
Inscrit le : Lun 14 Mai 2012, 18:51
|
Posté le : Mar 03 Juil 2012, 17:02
|
|
|
2nd+math+>+1
il me semble que cette touche est présente sur toutes les calculatrices
|
|
|
|
aurelti82
Autorisation : Membre
Nb de messages : 5
Inscrit le : Mar 03 Juil 2012, 15:56
|
Posté le : Mar 03 Juil 2012, 17:30
|
|
|
Merci samsam (étant donné n'avoir jamais vu cette partie, ça allait être difficile de trouver ... ^^')
Pour le Grec, ton programme ne se finit jamais ... :/
Pour sangohan38, le problème c'est qu'on obtient toujours 0 en résultat ... (ça me l'a déjà fait quand j'ai essayé de remanier mon programme ^^')
|
|
|
|
Samos
Autorisation : Membre
Nb de messages : 300
Inscrit le : Lun 14 Mai 2012, 18:51
|
Posté le : Mar 03 Juil 2012, 17:36
|
|
|
De rien (première fois que je suis util)
pour stoper une boucle tu peux lui mettre des limites
Code |
For(x,1,20
Prompt M
entAléat(1,50->A
If A<=30
Disp 0
If A>30 et A<=35
Disp -M [au cube]
If A>35
Disp M [au carré]
Pause
End
|
Fait 20 boucles avant de s'arreter
ou encore
Code |
While 1
Prompt M
entAléat(1,50->A
If A<=30
Disp 0
If A>30 et A<=35
Disp -M [au cube]
If A>35
Disp M [au carré]
Pause
codetouche ->A //getkey en anglais
If A=45:Stop
End
|
Tu arrete le programme avec la touche annul
EDIT:entrer sert aussi pour pause donc vaut mieu pas
|
|
|
|
aurelti82
Autorisation : Membre
Nb de messages : 5
Inscrit le : Mar 03 Juil 2012, 15:56
|
Posté le : Mar 03 Juil 2012, 17:57
|
|
|
Merci (encore) samsam ! je t'ai pris le premier, car plus court et avec plus de trucs que je suis censé connaître ^^. Pour ce qui est du "for", on peut mettre 1 au lieu de 20 non? (en plus, avec ça, quand je démarre mon programme et que je l'arrête, ça me met "fait", première fois avec ce programme ... ^^)
Donc, vraiment, merci beaucoup !
Et puis j'espère que ça plaira aux profs ... ^^
|
|
|
|
Samos
Autorisation : Membre
Nb de messages : 300
Inscrit le : Lun 14 Mai 2012, 18:51
|
Posté le : Mar 03 Juil 2012, 17:59
|
|
|
Avec la 2eme valeur ( la ou est me 20) tu choisis le nombre de boucle avec un peu d'entraînement tu pourra même apprendre aux profs
(encore) de rien!
|
|
|
|
Google_AdSense
|
Publicité
|
|
|
|
|
blg_flg
Autorisation : Membre
Nb de messages : 661
Inscrit le : Mer 23 Mai 2012, 17:28
|
Posté le : Mar 03 Juil 2012, 18:29
|
|
|
Arrête de te la péter Samsam. Etre utile pour la première fois qu'après plus de 100 posts c'est nul.
Je ne savais pas quand tu voulais arrêter le prog, donc je t'ai mis une boucle infinie, mais ça ne sert à rien de mettre For(X,1,1. Cela correspond à ne rien mettre, puisque la boucle ne s'exécutera qu'une seule fois.
PS important: Mes 2 premières phrases sont de l'humour. Qu'on ne me dise pas à nouveau que je suis méchant ou je ne sais quoi.
|
|
|
|
Samos
Autorisation : Membre
Nb de messages : 300
Inscrit le : Lun 14 Mai 2012, 18:51
|
Posté le : Mar 03 Juil 2012, 18:37
|
|
|
Je te trouve très méchant le Grec tu utilise l'humour pour balancer des phrases cinglantes dans nos g****es!!(c'est de l'humour aussi ) et à part recopier ce que j'ai dis...
|
|
|
|
The K
Autorisation : Membre
Nb de messages : 878
Inscrit le : Sam 15 Oct 2011, 11:07
|
Posté le : Mar 03 Juil 2012, 18:44
|
|
|
On se calme les gens on se calme ... merci
---------------------- La la la ...
Avez-vous pensé à regarder le manuel avant de demander conseil ? Un manuel est fait avant tout pour être consulté : MANUEL
Un problème de programmation ? Allez consulter ce tutoriel crée pour cela : TUTORIEL PROGRAMMATION
Vous avez un problème avec l'ordinateur avec votre calculatrice ? SOLUTION EN VIDEO
Mes programmes sur le site : Produit scalaire KMorpion Puissance 4 Mastermind
Mes nouveaux programmes de calcul formel : FCarré FPrime
Projet base de données : ici mais abandonné. Trop de travail ... |
|
|
|
blg_flg
Autorisation : Membre
Nb de messages : 661
Inscrit le : Mer 23 Mai 2012, 17:28
|
Posté le : Mar 03 Juil 2012, 18:52
|
|
|
Tu n'as rien dit sur la boucle For(X,1,1 . A l'heure qu'il est, aurelti82 est convaincu que c'est parfait, alors qu'il a créé une boucle inutile, qui lui sera répréhensible.
A part ça, sans commentaires...
|
|
|
|
EGUL
Autorisation : Membre
Nb de messages : 46
Inscrit le : Lun 02 Juil 2012, 11:40
|
Posté le : Mar 03 Juil 2012, 20:21
|
|
|
Essaye ceci :
Citer | 0->C
Input"NOMBRE DE TIRAGE",X
For(B,1,X)
EffEcr
Input"MISE",M
entAléat(1,50->A
Output(2,1,"GAIN =
If A<=5
Then
Output(2,8,-M^3
C-M^3->C
Else
If 6<=A<=20
Then
Output(2,8,M²
C+M²->C
Else
Output(2,8,0
End
End
Pause
End |
---------------------- En attente des résultats du bac!
Programmeur TI-82 fou
Prêt à aider ceux qui en ont besoin |
|
|
|
aurelti82
Autorisation : Membre
Nb de messages : 5
Inscrit le : Mar 03 Juil 2012, 15:56
|
Posté le : Sam 28 Juil 2012, 17:15
|
|
|
Merci Egul, mais le truc c'est que de toutes façon, il n'y a qu'un seul tirage, donc c'est pas utile pour moi de le mettre dedans. Et c'est bizarre parce que ça m'affiche jamais le nombre 0 (mais c'est peut etre parce que j'ai pas fait assez d'essais ...).
PS : dsl pour la réponse tardive, la faute aux vacances ... ^^
|
|
|
|