Programation sur casio classpad300
Réponses à toutes vos questions après le Bac (Fac, Prépa, etc.)
-
SergeM
- Membre Naturel
- Messages: 31
- Enregistré le: 15 Avr 2008, 14:13
-
par SergeM » 24 Juin 2008, 12:27
Voila je devais programmer la disivion euclidienne dans Z sur ma casio classpad300.
Dans un premier temps j'oublie que le dénominateur (a est le numerateur b le dénominteur) peut être négatif et j'écrit:
local c
0=>c
While a>b
a-b=>a
c+1=>c
WhileEnd
While aa
c-1=>c
WhileEnd
Print c
Print a
Jusque la tout va bien mon programme lui convient et effectue la division euclidienne dès lors que b>0.
Puis je me rend compte que b peut aussi être négatif alors je me dis que je vais rajouter des if.
local c
0=>c
If b>0
While a>b
a-b=>a
c+1=>c
WhileEnd
While aa
c-1=>c
WhileEnd
IfEnd
If b-b
a+b=>a
c-1=>c
WhileEnd
While aa
c+1=>c
WhileEnd
Print c
Print a
Mais là, la calculatrice n'est plus contente et me dis que ma syntaxe est incorrecte.
Donc si quelqu'un de plus experimenté en programation que moi était capable de reperer le problème ce serrait sympas.
-
mathelot
par mathelot » 24 Juin 2008, 12:44
Bjr,
il semble que la syntaxe soit:
If
Then
[Else]
Endif
regarde la doc. :we:
-
SergeM
- Membre Naturel
- Messages: 31
- Enregistré le: 15 Avr 2008, 14:13
-
par SergeM » 24 Juin 2008, 12:57
Ok en fait il s'agissait juste de marquer Then après la condition du if et ça tourne tout seul (je debute tout juste en programmation).
J'ai poser un deuxième if plutôt qu'en else parce que je ne voulais pas que le programme effectue les divisions par 0 et plante tout seul.
Merci
-
SergeM
- Membre Naturel
- Messages: 31
- Enregistré le: 15 Avr 2008, 14:13
-
par SergeM » 26 Juin 2008, 15:30
Toujours avec cette même machine j'ai un autre petit souci.
Je veut créer un programme qui me donne tout les nombres premier inferieurs à n.
Sachant que j'ai déjà crée le programme nbdiv qui nous renvois le nombre de diviseurs d'un entier (autre que 1 et lui même).
Je tape:
Local a
2=>a
While a<n
If nbdiv (a)=0
Then
Print a
IfEnd
WhileEnd
La machine accepte le programme, pas d'erreur de syntaxe cette fois. Mais lorsque je lui demande d'appliquer ce programme à un entier il me dis que c'est un mauvais type d'argument.
Quelqu'un voit-il le problème (je precise que je n'est rien trouvé la dessus dans la notice d'initiation) Merci.
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 52 invités