Les membres ayant 30 points peuvent parler sur les canaux annonces, projets et hs du chat.

Forum Casio - Autres questions


Index du Forum » Autres questions » Programme Analyse de nombre
Nirsab Hors ligne Membre Points: 117 Défis: 0 Message

Programme Analyse de nombre

Posté le 14/02/2022 11:29

Bien le bonjour

Je suis en train de faire un programme d'analyse de nombre.
J'aimerais qu'il soit le plus complet possible.

- Pair ou Impair ?
- Nombre carré ?
- Nombre triangulaire ?
- Nombre premier ?
- Nombre appartenant à la suite de Fibonacci
- Nombre appartenant à la suite de Fermat
- Si vous avez d'autres idées...


Pour le moment, j'ai réussi à faire une partie pour savoir si mon nombre est pair ou impair.
Je bloque un peu pour la suite...
Je cherche à faire la partie Fibonacci, mais il faut que je sache aussi comment on programme pour savoir si c'est un carré parfait..

Bref, j'ai envie de de faire un programme collaboratif, si c'est possible...

Voici ce que j'ai déjà fait, mais je ne pense pas que ce soit la manière la plus ergonomique:

"Nombre à analyser"?→N
"Pair ou Impair ?:"
2→A
N Rmdr A→B
If B=0
Then "PAIR"◢
Else
If B≠0
Then "IMPAIR"◢
"Nombre carré ?:"


Et ça bloque ....


Que faire,svp ?

Merci pour votre aide.

A+
N


Nirsab Hors ligne Membre Points: 117 Défis: 0 Message

Citer : Posté le 14/02/2022 18:58 | #


Je suis en train de m'embrouiller...
Avec les algos ressemblants...

Je crois qu'une pause s'impose....

Z'êtes là demain ?

Bonne soirée
La réussite commence avec la volonté d'essayer

Mes programmes
Clique APRES y avoir jeté un oeil

Tituya En ligne Rédacteur Points: 1997 Défis: 16 Message

Citer : Posté le 14/02/2022 19:00 | #


Nous sommes là tout le temps ahah
Comparé à d'autres forums tu peux poser ta question à n'importe quel moment, si tu n'as pas de réponses dans les 10 prochaines minutes (et je suis large), tu peux considérer que nous ne sommes pas là

Bonne soirée à toi aussi
Bretagne > Reste du globe
(Et de toute façon, vous pouvez pas dire l'inverse grâce à Bzh)
Projet en cours : Adoranda

Mes programmes
Hésite pas à faire un test !


Nirsab Hors ligne Membre Points: 117 Défis: 0 Message

Citer : Posté le 15/02/2022 08:24 | #


Halo !

C'et vrai que vous êtes très actifs, ca fait plaisir

Sinon, pour le "non" des nombres triangulaire, je sèche...
La réussite commence avec la volonté d'essayer

Mes programmes
Clique APRES y avoir jeté un oeil

Shadow15510 Hors ligne Administrateur Points: 5410 Défis: 16 Message

Citer : Posté le 15/02/2022 08:59 | #


Si j'en crois Wikipédia, il suffit que n(n+1) ne soit pas divisible par deux… Donc si le modulo de n(n+1) par deux et non nul. cf. la commande MOD(a, b) ([OPTN] [F6] [F4] [F6] [F4])

Mea culpa, je me suis planté, c'est pour trouver le nième nombre triangulaire ça x)
"Ce n'est pas parce que les chose sont dures que nous ne les faisons pas, c'est parce que nous ne les faisons pas qu'elles sont dures." Sénèque

Nirsab Hors ligne Membre Points: 117 Défis: 0 Message

Citer : Posté le 15/02/2022 09:10 | #


Ce qui me servira sûrement plus tard
Je prévois d'intégrer ça dans le programme, si j'arrive à m'en sortir

Pour le moment, mon prob's, c'est de corriger ça, en fonction de ce que j'ai déjà évoqué plus haut dans les messages:

"Nombre Triangulaire:"
If ???? sqrt(8N+1)=0
Then "Oui◢
Else
"Non"◢

Pour un nombre triangulaire, le prog fonctionne (6, 10 etc...), mais pur 5, cela ne fonctionne pas...


La réussite commence avec la volonté d'essayer

Mes programmes
Clique APRES y avoir jeté un oeil

Shadow15510 Hors ligne Administrateur Points: 5410 Défis: 16 Message

Citer : Posté le 15/02/2022 09:13 | #


Je sais pas si ça vient de là, mais la racine peut entraîner des erreurs d'arrondis. Tu peux directement 8N + 1 = 0 si la racine est nulle, en élevant au carré des deux côtés, ça reste nul et tu limites les calculs avec les flottants.

Ajouté le 15/02/2022 à 09:35 :
Ah si, trouvé !
Il faut regarder si 8n + 1 est un carré parfait, donc que la racine carrée de 8n + 1 soit un entier. Donc il suffit de regarder si la partie entière de sqrt(8n+1) est bien égale ) sqrt(8n+1).
"Ce n'est pas parce que les chose sont dures que nous ne les faisons pas, c'est parce que nous ne les faisons pas qu'elles sont dures." Sénèque

Nirsab Hors ligne Membre Points: 117 Défis: 0 Message

Citer : Posté le 15/02/2022 10:06 | #


Merci

J'ai fait ceci, mais cela ne fonctionne pas, pour 6, par exemple...

Int sqrt(8N+1) →B
B²=N⇒"Oui"◢
B²≠N⇒"Non"◢


Je suis quasiment sûr que c'est un truc tout bête, encore une fois....
La réussite commence avec la volonté d'essayer

Mes programmes
Clique APRES y avoir jeté un oeil

Lephenixnoir En ligne Administrateur Points: 22755 Défis: 149 Message

Citer : Posté le 15/02/2022 10:09 | #


Pour que 8N+1 soit un carré parfait il faut que B² soit égal à 8N+1, pas à N.
Nirsab Hors ligne Membre Points: 117 Défis: 0 Message

Citer : Posté le 15/02/2022 10:17 | #


Bah oui, où avais-je la tête...

Mais lorsque je tape 7, par exemple, le "non" n'est pas affiché....
La réussite commence avec la volonté d'essayer

Mes programmes
Clique APRES y avoir jeté un oeil

Lephenixnoir En ligne Administrateur Points: 22755 Défis: 149 Message

Citer : Posté le 15/02/2022 10:27 | #


Ça marche chez moi. Tu as tapé sqrt en toutes lettres ou bien utilisé le symbole √ (SHIFT+x²) ? Note aussi que les parenthèse sont nécessaires sinon tu obtiens (√8N)+1 à cause de la priorité des opérateurs.
Nirsab Hors ligne Membre Points: 117 Défis: 0 Message

Citer : Posté le 15/02/2022 10:35 | #


Int sqrt(8N+1) →B
B²=N⇒"Oui"◢
B²≠N⇒"Non"◢


le sqrt avec le signe et priorité est respectée...
La réussite commence avec la volonté d'essayer

Mes programmes
Clique APRES y avoir jeté un oeil

Lephenixnoir En ligne Administrateur Points: 22755 Défis: 149 Message

Citer : Posté le 15/02/2022 10:35 | #


On a dit B²=8N+1 ^^"
Nirsab Hors ligne Membre Points: 117 Défis: 0 Message

Citer : Posté le 15/02/2022 10:39 | #


oui... c'est ce que j'ai mis sur ma calto ***

Mais cela ne marche pas...

Int sqrt(8N+1) →B
B²=8N+1⇒"Oui"◢
B²≠8N+1⇒"Non"◢

La réussite commence avec la volonté d'essayer

Mes programmes
Clique APRES y avoir jeté un oeil

Lephenixnoir En ligne Administrateur Points: 22755 Défis: 149 Message

Citer : Posté le 15/02/2022 10:41 | #


Le code suivant marche sur la mienne dans un programme isolé.

?→N
Int √(8N+1)→B
B²=8N+1⇒"Oui"◢
B²≠8N+1⇒"Non"◢

Il doit y avoir quelque chose autour de ton code qui cloche.
Nirsab Hors ligne Membre Points: 117 Défis: 0 Message

Citer : Posté le 15/02/2022 10:45 | #


Pour l'instant, ça ressemble à ça :

"Nombre à analyser"?→N
"Pair ou Impair:"
2→A
N Rmdr A→B
B=0⇒"PAIR"◢
B≠0⇒"IMPAIR"◢
"Carré parfait:"
Int sqrt(N)→B
B²=N⇒"OUI"◢
B²≠N⇒"NON"◢
"Premier:"
N→M
2→D
While D²≤M
If M Rmdr D=0:Then D
M/D→M
Else
D+1→D
IfEnd
WhileEnd
If Frac N=0 And N≥2 And M=N
Then "OUI"◢
Else "NON"◢
"Nombre Triangulaire:"
Int sqrt(8N+1)→B
B²=(8N+1)⇒"OUI"◢
B²≠(8N+1)⇒"NON"◢
"Nombre de Fibonacci:"


Et pour l'instant je me suis arrêté là...
(Pas ergonomique du tout, je suis d'accord...)

Rappel du problème: Le prog ne m'affiche pas "NON" si le nombre n'est pas triangulaire...


La réussite commence avec la volonté d'essayer

Mes programmes
Clique APRES y avoir jeté un oeil

Lephenixnoir En ligne Administrateur Points: 22755 Défis: 149 Message

Citer : Posté le 15/02/2022 18:07 | #


T'as oublié le IfEnd à la fin du test de primalité, ce qui fait que toute la fin de ton programme est dans le sous-cas "nombre non premier".
Nirsab Hors ligne Membre Points: 117 Défis: 0 Message

Citer : Posté le 15/02/2022 18:14 | #


"Nombre à analyser"?→N
"Pair ou Impair:"
2→A
N Rmdr A→B
B=0⇒"PAIR"◢
B≠0⇒"IMPAIR"◢
"Carré parfait:"
Int sqrt(N)→B
B²=N⇒"OUI"◢
B²≠N⇒"NON"◢
"Premier:"
N→M
2→D
While D²≤M
If M Rmdr D=0:Then D
M/D→M
Else
D+1→D
IfEnd
WhileEnd
If Frac N=0 And N≥2 And M=N
Then "OUI"◢
Else "NON"◢
IfEnd //ici ?
"Nombre Triangulaire:"
Int sqrt(8N+1)→B
B²=(8N+1)⇒"OUI"◢
B²≠(8N+1)⇒"NON"◢
"Nombre de Fibonacci:"

La réussite commence avec la volonté d'essayer

Mes programmes
Clique APRES y avoir jeté un oeil

Lephenixnoir En ligne Administrateur Points: 22755 Défis: 149 Message

Citer : Posté le 15/02/2022 18:15 | #


Oui ici.
Nirsab Hors ligne Membre Points: 117 Défis: 0 Message

Citer : Posté le 15/02/2022 18:16 | #


Hé bé... J'ai encore des progrès à faire.........
Merci pour votre patience

Passons à la suite... de Fibonacci.... J'ai pas encore cherché
La réussite commence avec la volonté d'essayer

Mes programmes
Clique APRES y avoir jeté un oeil

Gladosse Hors ligne Membre Points: 169 Défis: 2 Message

Citer : Posté le 15/02/2022 19:01 | #


ca devrait t'aider https://www.geeksforgeeks.org/check-number-fibonacci-number/
Nirsab Hors ligne Membre Points: 117 Défis: 0 Message

Citer : Posté le 15/02/2022 19:15 | #


Je vais zieuter, Merci

Ajouté le 15/02/2022 à 20:23 :
ça ne doit pas être ça.... Je suis vraiment une quiche....

(5N²)+1→A
(5N²)-1→B
If sqrt(A)=N or sqrt(B)=N
Then "OUI"◢
Else
"NON"◢

La réussite commence avec la volonté d'essayer

Mes programmes
Clique APRES y avoir jeté un oeil


LienAjouter une imageAjouter une vidéoAjouter un lien vers un profilAjouter du codeCiterAjouter un spoiler(texte affichable/masquable par un clic)Ajouter une barre de progressionItaliqueGrasSoulignéAfficher du texte barréCentréJustifiéPlus petitPlus grandPlus de smileys !
Cliquez pour épingler Cliquez pour détacher Cliquez pour fermer
Alignement de l'image: Redimensionnement de l'image (en pixel):
Afficher la liste des membres
:bow: :cool: :good: :love: ^^
:omg: :fusil: :aie: :argh: :mdr:
:boulet2: :thx: :champ: :whistle: :bounce:
valider
 :)  ;)  :D  :p
 :lol:  8)  :(  :@
 0_0  :oops:  :grr:  :E
 :O  :sry:  :mmm:  :waza:
 :'(  :here:  ^^  >:)

Σ π θ ± α β γ δ Δ σ λ
Veuillez donner la réponse en chiffre
Vous devez activer le Javascript dans votre navigateur pour pouvoir valider ce formulaire.

Si vous n'avez pas volontairement désactivé cette fonctionnalité de votre navigateur, il s'agit probablement d'un bug : contactez l'équipe de Planète Casio.

Planète Casio v42 © créé par Neuronix et Muelsaco 2004 - 2022 | Il y a 51 connectés | Nous contacter | Qui sommes-nous ? | Licences et remerciements

Planète Casio est un site communautaire non affilié à Casio. Toute reproduction de Planète Casio, même partielle, est interdite.
Les programmes et autres publications présentes sur Planète Casio restent la propriété de leurs auteurs et peuvent être soumis à des licences ou copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd