Partage
  • Partager sur Facebook
  • Partager sur Twitter

[BASIC CASIO] Erreur dans un programme

Programme permettant de savoir si un nombre est premier ou pas

Sujet résolu
    10 octobre 2006 à 19:28:24

    Bonjour alors je pense que le titre est assez explicite, je voudrais savoir si un nombre est premier ou pas, voici mon code :
    "ENTRER LE NOMBRE A ANALYSER"
    ?->N
    2->C
    0->P
    While C<N
    N÷C->R
    If R=Int R
    Then 1->P
    R->S
    C->D
    Break
    IfEnd
    C+1->C
    WhileEnd
    If P=0
    Then "LE NOMBRE EST PREMIER"
    Else "LE NOMBRE N'EST PAS PREMIER, CAR "N" EST DIVISIBLE PAR "C" : "N"÷"C"="R"
    IfEnd

    Pour ceux qui ne connaissent pas "Int" (ceux ayant suivi le cours de Deltod) Int est fait pour les nombres entiers donc ça coupe le nombre à la virgule, voila alors si quelqu'un peut m'aider je le remercie d'avance.
    • Partager sur Facebook
    • Partager sur Twitter
      10 octobre 2006 à 19:38:53

      on peut savoir quelle est ton erreur?
      • Partager sur Facebook
      • Partager sur Twitter
        10 octobre 2006 à 19:41:36

        Une question tu peux m'expliquer pourquoi tu mets un break ?
        • Partager sur Facebook
        • Partager sur Twitter
          10 octobre 2006 à 19:53:23

          Le problème est en rouge :

          Citation

          Else "LE NOMBRE N'EST PAS PREMIER, CAR "N" EST DIVISIBLE PAR "C" : "N"÷"C"="R"


          La variable ne passe pas.

          Et ça sert à rien de continuer la boucle si on sait que le nombre n'est pas premier, je ne cherche pas tous les multiples de ce nombre
          • Partager sur Facebook
          • Partager sur Twitter
            10 octobre 2006 à 19:58:33

            J'ai testé ton code et tout marche parfaitement. Tu veux pas expliquer plus clairement ton problème? Stp
            • Partager sur Facebook
            • Partager sur Twitter
              10 octobre 2006 à 20:56:28

              En fait c'est bizarre que ça marche chez toi, car j'ai trouvé mon problème, on ne peut afficher des variables qu'avec des "Locate" enfin je crois, d'après le cours de Deltod, j'en déduis cela
              ClrText
              "ENTRER LE NOMBRE A ANALYSER"
              ?->N
              2->C
              0->P
              While C<N
              N÷C->R
              If R=Int R
              Then 1->P
              R->S
              C->D
              Break
              IfEnd
              C+1->C
              WhileEnd
              If P=0
              Then Locate 1,4,"LE NOMBRE EST PREMIER"
              Else Locate 1,4,"LE NOMBRE N'EST PAS"
              Locate 1,5,"PREMIER, CAR "
              Locate 14,5,N
              Locate 16,5,"EST"
              Locate 1,6,"DIVISIBLE PAR"
              Locate 15,6,C
              Locate 16,6," : "
              Locate 1,7,N
              Locate 2,7,"÷"
              Locate 3,7,C
              Locate 4,7,"="
              Locate 5,7,R
              IfEnd

              J'ai mis tant de locate pour pas que des mots ne soit pas coupé entre deux lignes

              [EDIT] Reglé : Ce code est faut car les derniers Locate ne vont pas (il n'y a pas 8 lignes sur la calculette) donc j'aurais une autre question, comment je peux faire pour afficher les derniers morceau de texte en faisant défiler le haut du texte, si c'est possible dites-le moi svp.
              • Partager sur Facebook
              • Partager sur Twitter
                10 octobre 2006 à 21:12:23

                Bien en fait il marchait car j'affiche pas les variables comme tu voulais qu'elles soient affichées. (utilisant une seule ligne).
                • Partager sur Facebook
                • Partager sur Twitter
                  10 octobre 2006 à 22:13:04

                  C y est j'ai trouvé ton erreur,tu ne peux pas mettre de guillemets dans une chaine de caractères:
                  Else "LE NOMBRE N'EST PAS PREMIER, CAR "N" EST DIVISIBLE PAR "C"

                  La calto a fini l'affichage après CAR et a trouvé un N qui n'avaut rien a faire la.Elle a donc du mettre une erreur de syntaxe.
                  • Partager sur Facebook
                  • Partager sur Twitter
                    11 octobre 2006 à 18:49:26

                    Citation : Toinou

                    En fait c'est bizarre que ça marche chez toi, car j'ai trouvé mon problème, on ne peut afficher des variables qu'avec des "Locate" enfin je crois, d'après le cours de Deltod, j'en déduis cela


                    Toinou, on peut afficher des variables avec un Locate :
                    Locate, 5, 6, A

                    Ce code va afficher la valeur de A .
                    • Partager sur Facebook
                    • Partager sur Twitter
                      11 octobre 2006 à 19:12:53

                      oui mais lui il croit qu'on ne peut faire que comme ça.C'est aussi possible avec le petit triangle.
                      • Partager sur Facebook
                      • Partager sur Twitter
                        11 octobre 2006 à 20:35:58

                        oui c'est bien ce que j'ai voulu dire, mais j'ai une question, j'ai remarqué ce petit triangle, cependant je ne comprand pas son utilité, si quelqu'un pourrait me l'expliquer avec un exemple ce serait sympa. Merci
                        • Partager sur Facebook
                        • Partager sur Twitter
                          13 octobre 2006 à 22:47:15

                          Le petit triangle noir ? C'est une sorte de pause dans un programme : il sert de séparation entre deux fonctions . Il faut appuyer sur EXE pour que le prog se remmette en marche .
                          • Partager sur Facebook
                          • Partager sur Twitter
                            28 octobre 2006 à 10:54:41

                            On peut afficher un variable sans locate.
                            Mais par contre on peut pas l'integrer dans un texte.

                            Ex:
                            "LE NOMBRE N'EST PAS PREMIER, CAR "N" EST DIVISIBLE PAR "C"

                            Ca donne:
                            "LE NOMBRE N'EST PAS PREMIER, CAR "
                            N{display} (display c'est le petit triangle noir dont on parle plus haut)
                            "EST DIVISIBLE PAR"
                            C{display}


                            Mais la t'aura une interruption a N et C. C'est pour ca que dans ton cas il vaut mieux utiliser locate comme indiqué plus haut ;)
                            • Partager sur Facebook
                            • Partager sur Twitter

                            [BASIC CASIO] Erreur dans un programme

                            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                            • Editeur
                            • Markdown