Les membres ayant 30 points peuvent parler sur les canaux annonces, projets et hs du chat.
La shoutbox n'est pas chargée par défaut pour des raisons de performances. Cliquez pour charger.

Forum Casio - Autres questions


Index du Forum » Autres questions » programme d'algorithme
Zohan-88 Hors ligne Membre Points: 10 Défis: 0 Message

programme d'algorithme

Posté le 21/03/2012 19:11

bonjour à tous, je dois réaliser un algorithme sur ma calculette et je n'y arrive pas du tout :/ voici le sujet :

VARIABLES : a,b nombres
ENTREES : Saisir a,b
TRAITEMENT :
Si a strictement b alors
c prend la valeur b
b prend la valeur a
a prend la valeur c

Fin Si

Si f(b)x f(a) 0 Alors
Tant que b-a strictement 10-5
Si f((a+b)/2)xf(a) 0
Alors b prend la valeur (a+b)/2
Sinon a prend la valeur (a+b)/2

Fin Si
FinTantque
Fin SI
SORTIES : Afficher a et b




Voici ce que j'ai fais :

A? (retour chariot)
B?
If Astrictement B
Then
CB
BA
AC
Ifend
If (A^3-3xA²+2)x(b^3-3xb²+2)0
Then
While B-A strictement (10^-5) Do
If (A+b)/2*(A^3-3A²+2)0
Then B ((A+B)/2)
Else A ((A+B)/2)
If End
WhileEnd
IfENd
"A="
"B="


pourriez vous m'aider à le corriger parce que je n'y arrive pas et je pense qu'il y a énormément d'erreurs.
merci de vôtre aide


Pierrotll Hors ligne Ancien administrateur Points: 5488 Défis: 41 Message

Citer : Posté le 21/03/2012 19:29 | #


Il manque apparemment quelques symboles au code que tu as copié, mais ça a l'air à peu près bon.

Quelques petits détails, pour demander d'entrer A et B :
"A"->A
"B"?->B

Il ne faut pas de Do à la ligne du While.

Et pour afficher les résultats :
"A=":A[DISP]
"B=":B[DISP]

Totoyo Hors ligne Membre d'honneur Points: 16093 Défis: 102 Message

Citer : Posté le 21/03/2012 19:39 | #


Si a strictement b alors

Supérieur ou inférieur ?

If Astrictement B
Then
C->B
B->A
A->C
Ifend

De même, c'est ce qui est à gauche de ta flèche -> qui donne la valeur à ta variable qui est à droite. Pour t'en rappeler, tu suis le mouvement de la flèche qui pointe vers la droite.

En corrigeant ton erreur, tu remarqueras que l'ancienne valeur de C est remplacée par la valeur de B avant qu'on a pu l'attribuer à A. En effet, la programmation, ça suit un ordre logique, la calculatrice suit tes instructions bêtement, ligne par ligne et les exécutent les uns après les autres dans cette ordre.

Il faut donc "sauvegarder" l'ancienne valeur de C dans une autre variable (la D par exemple).

If A strictement ... à B
Then
C->D //On "sauvegarde l'ancienne valeur de C dans D
B->C //B attribue sa valeur à C
A->B //De même, pour la valeur de A vers B
D->A //Là, on récupère l'ancienne valeur de C qu'on avait "sauvegarder" dans D pour l'attribuer enfin à A
IfEnd


----------------------------------------------------------
If (A^3-3xA²+2)x(b^3-3xb²+2)...0
Then
While B-A strictement (10^-5) Do Do fonctionne de paire avec la fonction LpWhile
If (A+b)/2*(A^3-3A²+2)...0
Then ((A+B)/2)->B //Ici, c'est pareil, c'est variable qui est à droite de la flèche -> qui prend la valeur de ce qui est à gauche
Else ((A+B)/2)->A //idem
IfEnd
WhileEnd


---------------------
"A="
A[DISP]
"B="
B[DISP]


Sinon, ce n'est pas trop mauvais, surtout si tu débutes avec la programmation et l’algorithmie, tu sembles avoir compris la logique
Pierrotll Hors ligne Ancien administrateur Points: 5488 Défis: 41 Message

Citer : Posté le 21/03/2012 20:28 | #


Totoyo tu nous a fait quoi là ? Ce bloc sert à inverser la valeur de A et B si A>B
Donc :
B->C
A->B
C->A
Totoyo Hors ligne Membre d'honneur Points: 16093 Défis: 102 Message

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 v4.3 © créé par Neuronix et Muelsaco 2004 - 2024 | Il y a 113 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