logo

Difficultés pour faire un programme sur une voyage 200 TI


calculatricesDifficultés pour faire un programme sur une voyage 200 TI

#msg1591823 Posté le 19-01-08 à 13:40
Posté par coko93 (invité)

Bonjour à tous.
Je prépare un programme pour savoir si un entier n  est premier ou pas ...
Voila ce que j'ai fait ....

:premier(n)
: Prgm
: If n= 0 Then
: Disp "le nombre n'est pas premier"
: Elseif n=1 Then
: Disp "le nombre n'est pas premier"
: Elseif n=2 Then
: Disp "le nombre est premier"
: Elseif mod(n,2)=0 Then
: Disp"le nombre n'est pas premier"
: Else
: Local k
: 3->k
: While k^2 <= n
: If mod(n,k)=0 Then
: Disp "le nombre n'est pas premier"
: k+2->k
: Disp"le nombre est premier"
: EndIf
: EnWhile
: EndPrgm


l'algorihtme ne marche que pour 0;1 et et les nombres pairs ....
pour le reste il n'affiche rien du tout ....
je ne vois pas du tout comment faire je suis à l'iufm mais on nous donne pas des cours sur la calculatrice .

Merci à vous !

Et Bonne Année Bonne Santé surtout !
re : Difficultés pour faire un programme sur une voyage 200 TI#msg1591844 Posté le 19-01-08 à 13:51
Posté par Profiljamo jamo Moderateur

Bonjour,

il ne te manque pas un "endif" à la fin, après le "endwhile" ??
re : Difficultés pour faire un programme sur une voyage 200 TI#msg1591852 Posté le 19-01-08 à 13:55
Posté par Profiljamo jamo Moderateur

De plus, il te manque un "else" entre "k+2->k" et "disp"le nombre est premier"
re : Difficultés pour faire un programme sur une voyage 200 TI#msg1591856 Posté le 19-01-08 à 13:56
Posté par Profiljamo jamo Moderateur

Sinon, tu trouveras un programme ici :
re : Difficultés pour faire un programme sur une voyage 200 TI#msg1592946 Posté le 19-01-08 à 18:13
Posté par ProfilH-Espace H-Espace

Il existe encore des personnes qui postent sur le net leur propres programmes, je croyais que ca n'existait plus (je cherche des programmes mais je n'ai plus le cable, et je me débrouilles assez mal en programmation... Exemple j'ai un polynome scindé j'essaye d'extraires racines et ordre de multiplicité impossible
re : Difficultés pour faire un programme sur une voyage 200 TI#msg1592950 Posté le 19-01-08 à 18:14
Posté par Profiljamo jamo Moderateur

H-Espace >> quel est ton problème exactement ? Tu as un polynôme sous quelle forme ? De quel degré ?
re : Difficultés pour faire un programme sur une voyage 200 TI#msg1593160 Posté le 19-01-08 à 18:55
Posté par coko93 (invité)

Merci pour tes réponses JAMO!
c'est très gentil de ta part ... lol
comme tu peux le voir je suis nul en programmation ..
C'est mon point faible d'autant plus que dans mon IUFM on nous entraïne pas à ça...
Encore merci !!
re : Difficultés pour faire un programme sur une voyage 200 TI#msg1593268 Posté le 19-01-08 à 19:22
Posté par Profiljamo jamo Moderateur

Ce n'est pas le but de l'IUFM de former à la programmation, en effet ...
re : Difficultés pour faire un programme sur une voyage 200 TI#msg1593296 Posté le 19-01-08 à 19:31
Posté par ProfilH-Espace H-Espace

Bah je fais un programme sur les polynomes caractéristiques donc il me donne des (pour l'instant...) gentils polynomes du style x(x-2)(x-4)... J'essaye d'automatiser tout ca pour eviter les erreurs en retranscrivant (parce que je pourrais mettre une commande avec mes vp avec leurs ordres de multiplicité) mais le prob c'est que resol et zero me donne des listes ou des conditions, et je n'arrive pas a extraire les valeurs... (En plus qu'elle sont d'une précision affligent, ca la tue de dire {0 , 0 , 1} elle me sort du {3.14.10^-9, 0 , 1}
re : Difficultés pour faire un programme sur une voyage 200 TI#msg1593311 Posté le 19-01-08 à 19:35
Posté par Profiljamo jamo Moderateur

H-Espace >> je pense que le mieux, c'est que tu crées ton propre topic en expliquant clairement ton problème, car pour l'instant, je ne comprend toujours pas ton problème : si tu connais le polynôme sous forme factorisée, je ne vois pas le problème d'en determiner les racines ...
re : Difficultés pour faire un programme sur une voyage 200 TI#msg1593326 Posté le 19-01-08 à 19:38
Posté par ProfilH-Espace H-Espace

Pas bete je m'ecclispe... Pardon coko93....
re : Difficultés pour faire un programme sur une voyage 200 TI#msg1593520 Posté le 19-01-08 à 20:45
Posté par Profilplumemeteore plumemeteore

bonjour Coko
dans l'état actuel de ton programme, si n = 3, 5 ou 7, la condition de la boucle, dès le départ n'est pas remplie et elle ne s'effectue pas
si n = 9 ou un multiple de 3, le programme devrait afficher 'le nombre n'est pas premier' puis 'le nombre est premier' cependant que k passe à 5
la boucle continue tant que n est divisible par les valeurs de k : par 3, par 5, par 7, par 9
à la première non divisibilité, la condition if mod(n;k) = 0 n'est plus remplie, les instructions suivantes ne s'exécutent pas et k reste 'calé'; comme k² reste alors inférieur à n, la condition de la boucle est toujours remplie, mais elle tourne à vide

la fin du programme devrait être ceci (les ajouts sont en gras)
: While k^2 <= n
: If mod(n,k)=0 Then
: Disp "le nombre n'est pas premier"
: Stop // où l'instruction du langage arrêtant l'exécution
: Else
: k+2->k
: Disp"le nombre est premier"
: EndIf // se rapporte au If après While
: EnWhile
: EndIf // se rapporte au If du tout début
: EndPrgm
re : Difficultés pour faire un programme sur une voyage 200 TI#msg1594165 Posté le 20-01-08 à 10:15
Posté par Profilplumemeteore plumemeteore

bonjour
le programme n'est pas encore parfait, puisqu'il n'affiche rien quand n = 3, 5 ou 7, car la condition de While n'est pas remplie dès le départ
il faut ajouter juste avant le premier else
: Elseif n = 3 or = n = 5 or n = 7 Then
: Disp "le nombre est premier"
dans ta version
avec 3, 5, 7 ton programme s'arrête sans rien affiché
avec 9, 15, 21, ton programme s'arrête après avoir affiché une fois "le nombre n'est pas premier"
avec 45, ton programme s'arrête après avoir affiché deux fois "le nombre n'est pas premier"
avec les autres nombres impairs, le programme ne s'arrête pas (il faut l'arrêter manuellement, par Ctrl Pause ou une touche ou un clic similaire) et il affiche zéro OU une OU deux OU trois OU ... fois "le nombre n'est pas premier" selon que le nombre n'est pas divisible par 3 OU est divisible par 3 OU est divisible par 3 et 5 OU est divisible par 3, 5, et 7 OU
re : Difficultés pour faire un programme sur une voyage 200 TI#msg1597332 Posté le 20-01-08 à 21:00
Posté par coko93 (invité)

Merci beaucoup plumemeteore !!

j'ai réussi a arranger le programme sayais il marche !!

MERCI BEAUCOUP A TOUS !!
Je me posais juste une question :

au lieu d'afficher " le nombre n'est pas premier " ou " le nombre premier "

est-il possible sur la calculatrice d'afficher la valeur de n exactement n'est pas premier


exemple

" 11 est premier "
" 20 n'est pas premier "

je sais que sur C on peut le faire en mettant " %n n'est pas premier "  
re : Difficultés pour faire un programme sur une voyage 200 TI#msg1597351 Posté le 20-01-08 à 21:09
Posté par Profiljamo jamo Moderateur

Oui, c'est faisable.

Tu écris :

Disp "le nombre "&string(n)&" est premier"
re : Difficultés pour faire un programme sur une voyage 200 TI#msg1597356 Posté le 20-01-08 à 21:10
Posté par Profilloloteaide loloteaide

Bonsoir jamo , je suis désolée de vous prendre au dépourvu , mais pouvez vous m'aider ? je suis vraiment bloquée , et j'aurais besoin d'une aide précieuse ! Je vous remerci d'avance pour votre compréhension !
re : Difficultés pour faire un programme sur une voyage 200 TI#msg1597367 Posté le 20-01-08 à 21:13
Posté par Profiljamo jamo Moderateur

loloteaide >> merci de ne pas venir ainsi dans les topics des autres ...
re : Difficultés pour faire un programme sur une voyage 200 TI#msg3087300 Posté le 24-06-10 à 09:40
Posté par Profilfred26 fred26

Bonjour à tous,

Je suis à la recherche d'un programme simple qui permet de savoir si un nombre entier donnée est premier ou pas.
Dans ce programme corrigé par Jamo et Plumemeteore, il y a tout de même quelques "bugs" notamment sur l'arrêt de la procédure, c'est tout de même mieux que ce que j'ai : nada!

Auriez-vous un autre programme simple et amélioré (avec le critère d'arrêt k^2<n) pour savoir si n est premier?

Je suis nul en programmation et je vous remercie par avance.

Fred
re : Difficultés pour faire un programme sur une voyage 200 TI#msg3087469 Posté le 24-06-10 à 18:47
Posté par Profilplumemeteore plumemeteore

Bonjour Fred.
J'avais mal placé mon instruction
: Disp "le nombre est premier"
Elle doit être juste après :Endwhile
re : Difficultés pour faire un programme sur une voyage 200 TI#msg3087473 Posté le 24-06-10 à 19:02
Posté par Profilfred26 fred26

Salut et merci de m'avoir répondu deux ans après ton dernier post lol.

Ca te dérangerait de me le mettre en forme une bonne fois pour toute car je capte plus trop avec tous ces rajouts??

Merci par avance.
re : Difficultés pour faire un programme sur une voyage 200 TI#msg3087504 Posté le 24-06-10 à 20:13
Posté par Profilplumemeteore plumemeteore

Bonsoir.
:premier(n)
: Prgm
: If n=0 Or n=1 Then //
: Disp "le nombre n'est pas premier"
: Elseif n=2 Then
: Disp "le nombre est premier"
: Elseif mod(n,2)=0 Then
: Disp "le nombre n'est pas premier"
: Else
: Local k
: 3->k
: While k^2 <= n
: If mod(n,k)=0 Then // le nombre est divisible par k
   : Disp "le nombre n'est pas premier"
   : Stop // met fin à l'exécution du programme
   : Else // le nombre n'est pas divisible par k
   : k+2->k
: EndIf // se rapporte au If suivant While
: EnWhile // on a essayé tous les diviseurs pairs
: Disp "le nombre est premier"
: Endif // se rapporte au If qui est au tout début du programme
: EndPrgm

Il faut bien remarquer et comprendre l'emboîtement des deux If ... Endif.

Répondre à ce sujet

réservé Seuls les membres peuvent poster sur le forum !

Vous devez être connecté pour poster
attention Un modérateur est susceptible de supprimer toute contribution qui ne serait pas en relation avec le thème de discussion abordé, la ligne éditoriale du site, ou qui serait contraire à la loi.

  • Ce topic

    imprimer Imprimer
    réduire la tailleRéduire   /   agrandir la tailleAgrandir

    Pour plus d'options, connection connectez vous !
  • Fiches de maths



maths - prof de maths haut de pagehaut Retrouvez cette page sur ilemaths l'île des mathématiques
© Tom_Pascal & Océane 2012