- Partage ce devoir avec tes amis !
Sujet du devoir
Le sujet est sur la photo ci-jointe.
Image concernant mon devoir de Mathématiques
Où j'en suis dans mon devoir
Mon code actuel terminé :
1 VARIABLES
2 a EST_DU_TYPE NOMBRE
3 b EST_DU_TYPE NOMBRE
4 c EST_DU_TYPE NOMBRE
5 D EST_DU_TYPE NOMBRE
6 X EST_DU_TYPE NOMBRE
7 Y EST_DU_TYPE NOMBRE
8 alpha EST_DU_TYPE NOMBRE
9 beta EST_DU_TYPE NOMBRE
10 DEBUT_ALGORITHME
11 TANT_QUE (a==0) FAIRE
12 DEBUT_TANT_QUE
13 AFFICHER "(a≠0)"
14 LIRE a
15 SI (a==0) ALORS
16 DEBUT_SI
17 AFFICHER "A ne dois pas être égal à 0. Recommencez "
18 FIN_SI
19 FIN_TANT_QUE
20 LIRE b
21 LIRE c
22 D PREND_LA_VALEUR pow(b,2)-(4*a*c)
23 AFFICHER D
24 SI (D>0) ALORS
25 DEBUT_SI
26 X PREND_LA_VALEUR (-b-sqrt(D))/(2*a)
27 Y PREND_LA_VALEUR (-b+sqrt(D))/(2*a)
28 AFFICHER X
29 AFFICHER Y
30 FIN_SI
31 SI (d=0) ALORS
32 DEBUT_SI
33 X PREND_LA_VALEUR -(b/2*a)
34 AFFICHER X
35 FIN_SI
36 SI (D<0) ALORS
37 DEBUT_SI
38 AFFICHER "Pas de solution"
39 FIN_SI
40
41 FIN_ALGORITHME
J'aimerais avoir des pistes pour améliorer sa vitesse et l'optimiser.
1 commentaire pour ce devoir
Ils ont besoin d'aide !
- Aucun devoir trouvé, poste ton devoir maintenant.
Avant de l'optimiser, rendons-le plus correct. :P
Même si c'est un peu plus long, il faut au départ que tu initialises ta variable a à 0, avant ton "tant que". Tu ne sais pas ce que contient cette variable a avant. Imagine qu'en créant a, il soit initialisé à 364273, ton algorithme n'est plus bon. :P
Autre possibilité, changer ton "tant que" en "faire ... tant que", ou "faire ... jusqu'à". Je ne sais pas exactement le terme utilisé par Algobox. Cela permettra de rentrer obligatoirement au moins une fois dans ta boucle. Et du coup, là, tu pourras dès le début lire a.
Sinon, niveau optimisation, je ne vois pas trop ce que l'on peut faire, mis à part changer les deux derniers "si" en "sinon si" et "sinon".