Algorithme sur algobox

Réponses à toutes vos questions de la 2nde à la Terminale toutes séries
cheerleaderforxder
Messages: 7
Enregistré le: 11 Sep 2015, 17:56

Algorithme sur algobox

par cheerleaderforxder » 11 Sep 2015, 18:05

Bonsoir à tous, voilà mon problème, j'ai essayé plusieurs fois de réaliser l'algorithme et je sais que je ne suis pas loin de la réponse.. mais je n'y arrive pas!! :(
Le sujet :

Tof prétend pouvoir écrire un programme permettant de retrouver deux nombres a et b à partir de leur somme S et de leur produit P.En effet,sa maman lui a dit que les nombres en question sont toujours les racines du trinôme x²-Sx+P
Par exemple pour S=17 et P=60 on constate que 5 et 12 sont bien les racines du trinôme x²-17x+60
Ecrire ce programme à l'aide du logiciel Algobox

Voici mon algorithme:
VARIABLES
S EST_DU_TYPE NOMBRE
P EST_DU_TYPE NOMBRE
D EST_DU_TYPE NOMBRE
a EST_DU_TYPE NOMBRE
b EST_DU_TYPE NOMBRE
DEBUT_ALGORITHME
LIRE S
LIRE P
S PREND_LA_VALEUR a+b
P PREND_LA_VALEUR a*b
D PREND_LA_VALEUR (S*S)-4*P
SI (D>0) ALORS
DEBUT_SI
a PREND_LA_VALEUR S+sqrt(D)%2
b PREND_LA_VALEUR S-sqrt(D)%2
AFFICHER a
AFFICHER b
FIN_SI
FIN_ALGORITHME

Je dois le rendre bientôt.. Merci à ceux qui prendront le temps de m'aider ;)



Avatar de l’utilisateur
chan79
Membre Légendaire
Messages: 10330
Enregistré le: 04 Mar 2007, 19:39

par chan79 » 11 Sep 2015, 18:09

cheerleaderforxder a écrit:Bonsoir à tous, voilà mon problème, j'ai essayé plusieurs fois de réaliser l'algorithme et je sais que je ne suis pas loin de la réponse.. mais je n'y arrive pas!! :(
Le sujet :

Tof prétend pouvoir écrire un programme permettant de retrouver deux nombres a et b à partir de leur somme S et de leur produit P.En effet,sa maman lui a dit que les nombres en question sont toujours les racines du trinôme x²-Sx+P
Par exemple pour S=17 et P=60 on constate que 5 et 12 sont bien les racines du trinôme x²-17x+60
Ecrire ce programme à l'aide du logiciel Algobox

Voici mon algorithme:
VARIABLES
S EST_DU_TYPE NOMBRE
P EST_DU_TYPE NOMBRE
D EST_DU_TYPE NOMBRE
a EST_DU_TYPE NOMBRE
b EST_DU_TYPE NOMBRE
DEBUT_ALGORITHME
LIRE S
LIRE P
S PREND_LA_VALEUR a+b
P PREND_LA_VALEUR a*b
D PREND_LA_VALEUR (S*S)-4*P
SI (D>0) ALORS
DEBUT_SI
a PREND_LA_VALEUR S+sqrt(D)%2
b PREND_LA_VALEUR S-sqrt(D)%2
AFFICHER a
AFFICHER b
FIN_SI
FIN_ALGORITHME

Je dois le rendre bientôt.. Merci à ceux qui prendront le temps de m'aider ;)



attention aux parenthèses
(S+sqrt(D))%2

cheerleaderforxder
Messages: 7
Enregistré le: 11 Sep 2015, 17:56

par cheerleaderforxder » 11 Sep 2015, 18:11

Je les avais mises et en recopiant, j'ai oublié en effet! Merci :)
Mais mon algorithme ne marche pas pour autant..

mathelot

par mathelot » 11 Sep 2015, 18:13

i) a et b ne servent pas, supprime ces variables
ii) l'expression des racines est et


Il faut parenthéser le numérateur pour que 2 divise les deux termes du numérateur.

iii) De plus, il faut une discussion autour du signe du discriminant
(afficher un message quand il est strictement négatif)

iv) efface ces deux instructions qui sont inutiles:
S PREND_LA_VALEUR a+b
P PREND_LA_VALEUR a*b

cheerleaderforxder
Messages: 7
Enregistré le: 11 Sep 2015, 17:56

par cheerleaderforxder » 11 Sep 2015, 20:07

J'ai changé ce que vous m'avez expliqué, mais par contre je ne sais pas où mettre l'expression pour la racine, je ne sais pas vraiment par où commencer dans l'algorithme..Je ne dois pas créer de variable a et b? car je les ai supprimées et en testant, il me dit qu'il y a une erreur à la ligne S prend la valeur a+b...
Merci http://www.maths-forum.com/newreply.php?do=newreply&noquote=1&p=1099192#

VARIABLES
S EST_DU_TYPE NOMBRE
P EST_DU_TYPE NOMBRE
D EST_DU_TYPE NOMBRE
DEBUT_ALGORITHME
LIRE S
LIRE P
S PREND_LA_VALEUR a+b
P PREND_LA_VALEUR a*b
D PREND_LA_VALEUR (S*S)-4*P
AFFICHER "Le discriminant vaut"
AFFICHER D
SI (D>0) ALORS
DEBUT_SI
a PREND_LA_VALEUR (S+sqrt(D))%2
b PREND_LA_VALEUR (S-sqrt(D))%2
AFFICHER a
AFFICHER b
FIN_SI
AFFICHER "Sinon, il n'y a pas de solution"
FIN_ALGORITHME

mathelot

par mathelot » 11 Sep 2015, 20:13

cheerleaderforxder a écrit:J'ai changé ce que vous m'avez expliqué, mais par contre je ne sais pas où mettre l'expression pour la racine, je ne sais pas vraiment par où commencer dans l'algorithme..Je ne dois pas créer de variable a et b? car je les ai supprimées et en testant, il me dit qu'il y a une erreur à la ligne S prend la valeur a+b...
Merci http://www.maths-forum.com/newreply.php?do=newreply&noquote=1&p=1099192#

VARIABLES
S EST_DU_TYPE NOMBRE
P EST_DU_TYPE NOMBRE
D EST_DU_TYPE NOMBRE
a EST_DU_TYPE NOMBRE
b EST_DU_TYPE NOMBRE
DEBUT_ALGORITHME
LIRE S
LIRE P
S PREND_LA_VALEUR a+b supprimer ces deux instructions
P PREND_LA_VALEUR a*b supprimer ces deux instructions

D PREND_LA_VALEUR (S*S)-4*P
AFFICHER "Le discriminant vaut"
AFFICHER D
SI (D>0) ALORS
DEBUT_SI
a PREND_LA_VALEUR (S+sqrt(D))%2
b PREND_LA_VALEUR (S-sqrt(D))%2
AFFICHER a
AFFICHER b
FIN_SI
AFFICHER "Sinon, il n'y a pas de solution"
FIN_ALGORITHME



traiter le cas D=0 et D<0

cheerleaderforxder
Messages: 7
Enregistré le: 11 Sep 2015, 17:56

par cheerleaderforxder » 11 Sep 2015, 20:15

Je n'avais pas vu les dernières indications.. j'arrive à ça:

VARIABLES
S EST_DU_TYPE NOMBRE
P EST_DU_TYPE NOMBRE
D EST_DU_TYPE NOMBRE
DEBUT_ALGORITHME
LIRE S
LIRE P
D PREND_LA_VALEUR (S*S)-4*P
AFFICHER "Le discriminant vaut"
AFFICHER D
SI (D0) ALORS
DEBUT_SI
D PREND_LA_VALEUR (S+sqrt(S*S-4*P))%2
D PREND_LA_VALEUR (S-sqrt(S*S-4*P))%2
AFFICHER* D
FIN_SI

FIN_ALGORITHME

mathelot

par mathelot » 11 Sep 2015, 20:18

cheerleaderforxder a écrit:Je n'avais pas vu les dernières indications.. j'arrive à ça:

VARIABLES
S EST_DU_TYPE NOMBRE
P EST_DU_TYPE NOMBRE
D EST_DU_TYPE NOMBRE
DEBUT_ALGORITHME
LIRE S
LIRE P
D PREND_LA_VALEUR (S*S)-4*P
AFFICHER "Le discriminant vaut"
AFFICHER D
SI (D0) ALORS
DEBUT_SI
D PREND_LA_VALEUR (S+sqrt(S*S-4*P))%2
AFFICHER* D
D PREND_LA_VALEUR (S-sqrt(S*S-4*P))%2
AFFICHER* D
FIN_SI

FIN_ALGORITHME

......................

cheerleaderforxder
Messages: 7
Enregistré le: 11 Sep 2015, 17:56

par cheerleaderforxder » 11 Sep 2015, 20:19

Je ne comprends pas comment j'arriverai à afficher a=. et b=. à la fin... Je ne sais pas quoi faire dans mon algorithme et est-ce la peine de traiter quand D=0? Le prof ne nous a pas parlé de ça

cheerleaderforxder
Messages: 7
Enregistré le: 11 Sep 2015, 17:56

par cheerleaderforxder » 11 Sep 2015, 20:22

Merci :), j'ai ajouté le "afficher D" mais j'obtiens que le discriminant est égal à 4900 avec S=17 et P=60
Je suis perdue..

mathelot

par mathelot » 11 Sep 2015, 20:29

VARIABLES
S EST_DU_TYPE NOMBRE
P EST_DU_TYPE NOMBRE
D EST_DU_TYPE NOMBRE
DEBUT_ALGORITHME
a EST_DU_TYPE NOMBRE
b EST_DU_TYPE NOMBRE
LIRE S
LIRE P
D PREND_LA_VALEUR (S*S)-4*P
AFFICHER "Le discriminant vaut"
AFFICHER D
SI (D0) ALORS
DEBUT_SI
a PREND_LA_VALEUR (S+sqrt(S*S-4*P))%2
b PREND_LA_VALEUR (S-sqrt(S*S-4*P))%2
AFFICHER a
AFFICHER b
FIN_SI

FIN_ALGORITHME

reste le cas D=0

cheerleaderforxder
Messages: 7
Enregistré le: 11 Sep 2015, 17:56

par cheerleaderforxder » 12 Sep 2015, 10:33

j'ai formulé si D==0, alors il y a une solution: -b/2a
Je ne sais pas comment exprimer la solution sachant que l'on doit obtenir a et b justement

 

Retourner vers ✎✎ Lycée

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 39 invités

cron

Tu pars déja ?



Fais toi aider gratuitement sur Maths-forum !

Créé un compte en 1 minute et pose ta question dans le forum ;-)
Inscription gratuite

Identification

Pas encore inscrit ?

Ou identifiez-vous :

Inscription gratuite