Inscription / Connexion Nouveau Sujet
Niveau première
Partager :

discriminant algorithme

Posté par
ganouhis
04-03-16 à 14:21

Bonjour,
j'ai un devoir sur algobox, l'exercice est le suivant: écrire un algorithme qui  résout une équation du second degré avec le discriminant.
j'ai donc fait ceci (voir image attachée)
seulement quand je lance l'algorithme eh bien il me dit "***L'algorithme contient une erreur : impossible de le lancer***
***Vérifiez la syntaxe des affectations et des conditions***"
quelqu'un pourrait-il s'il vous plait me donner mon ou mes erreurs?
Merci bonne journée

discriminant algorithme

Posté par
mathafou Moderateur
re : discriminant algorithme 04-03-16 à 14:33

Bonjour,

AFFICHERCALCUL (-b-sqrt(delta))/(2a)= contient deux erreurs à elle seule.

le = à la fin et le 2a qui doit s'écrire 2*a

pareil pour = de l'autre (mais le 2*a est bien écrit)

une remarque : les valeurs d'entrées ne doivent pas nécessiter la modification de l'algorithme à chaque fois qu'on veut en changer !!!!

ton algorithme sert à la seule et unique résolution de la seule équation x² - 4x + 3 = 0 et pas du tout à la résolution de l'équation ax² + bx + c = 0 en général !

ce n'est pas du tout des "a PREND_LA_VALEUR" de quoi que ce soit qu'il faut utiliser, mais des LIRE a etc

le programme demande ces valeurs à l'exécution

par lors de l'écriture une fois pour toute du programme !!
ce serait absurde (absurde de faire un programme qui ne sait faire que résoudre cette seule et unique équation numérique là), les tests seraient bien inutiles puisqu'on en connaitrait le résultat à l'avance etc...

Posté par
ganouhis
re : discriminant algorithme 04-03-16 à 14:38

merci beaucoup!!

Posté par
Glapion Moderateur
re : discriminant algorithme 04-03-16 à 14:48

ne pas mettre de = après AFFICHERCALCUL* (-b-sqrt(D))/(2*a)

(tu peux le copier/coller dans algobox en mode éditeur de texte, ou bien directement en ligne dans proglab )

j'ai mis D à la place de delta, il marche bien, j'ai gardé ton texte, j'ai juste rajouter des * qui font des sauts de lignes pour une meilleure lisibilité :


VARIABLES
	a EST_DU_TYPE NOMBRE
	b EST_DU_TYPE NOMBRE
	c EST_DU_TYPE NOMBRE
	D EST_DU_TYPE NOMBRE
DEBUT_ALGORITHME
	AFFICHER "résolution de l'équation ax²+bx+c=0 avec "
	a PREND_LA_VALEUR 1
	b PREND_LA_VALEUR -4
	c PREND_LA_VALEUR 3
	AFFICHER " a ="
	AFFICHER a
	AFFICHER " b ="
	AFFICHER b
	AFFICHER " et c="
	AFFICHER* c
	D PREND_LA_VALEUR b*b-4*a*c
	AFFICHER "delta = b²-4ac= "
	AFFICHER* D
	SI (D<0) ALORS
		DEBUT_SI
		AFFICHER "delta<0 donc pas de racines réelles."
		FIN_SI
	SI (D==0) ALORS
		DEBUT_SI
		AFFICHER "delta=0 donc une racine réelle -b/2a="
		AFFICHERCALCUL -b/(2*a)
		FIN_SI
	SI (D>0) ALORS
		DEBUT_SI
		AFFICHER "delta>0 donc deux racines réelles "
		AFFICHER "(-b-racine(delta))/(2a) = "
		AFFICHERCALCUL* (-b-sqrt(D))/(2*a)
		AFFICHER "(-b+racine(delta))/(2a) = "
		AFFICHERCALCUL* (-b+sqrt(D))/(2*a)
		FIN_SI
FIN_ALGORITHME

Posté par
Glapion Moderateur
re : discriminant algorithme 04-03-16 à 14:49

ha j'ai été trop lent pour mathafou
(qui a raison, c'est plus élégant de mettre des LIRE a, etc... que de devoir changer les valeur dans le code à chaque fois)



Vous devez être membre accéder à ce service...

Pas encore inscrit ?

1 compte par personne, multi-compte interdit !

Ou identifiez-vous :


Rester sur la page

Inscription gratuite

Fiches en rapport

parmi 1730 fiches de maths

Désolé, votre version d'Internet Explorer est plus que périmée ! Merci de le mettre à jour ou de télécharger Firefox ou Google Chrome pour utiliser le site. Votre ordinateur vous remerciera !