A voir également:
- Comment faire une chaîne d'opérations
- Chaine tnt gratuite sur mobile - Guide
- Chaine radio - Télécharger - Médias et Actualité
- Plus de chaine tv - Guide
- Chaine musique bouygues - Accueil - Guide TV et vidéo
- L'équipe live foot chaine - Accueil - TV & Vidéo
21 réponses
Tu n'as pas dû tester très en profondeur.
Voilà deux exemples tirés de mes deux premier tests.
(12 + 34) / 2 = 0.1765 selon ton programme au lieu de 23
-----Calcule Normal----
Saisiser un nombre :12
Saisiser un nombre :34
Entrer(1) pour Addition +
Entrer(2) pour Soustraction -
Entrer(3) pour Multiplication *
Entrer(4) pour Division /
Entrer(5) pour la puissance : 1
La somme de 12 + 34 = 46
------------
Continuer le cacul_(x)
Faire un autre calcule_(O/N)?
Retour a l'acceuil_(A)
x
Operateur : /
Saisir une valeur : 2
0 / 2 = 0.1765
Continuer le cacul_(x)
Faire un autre calcule_(O/N)?
Retour a l'acceuil_(A)
^C
Si je veux faire 12 + 34 + 4 + 5 je peux pas continuer l'opération pour faire la dernière addition.
-----Calcule Normal----
Saisiser un nombre :12
Saisiser un nombre :34
Entrer(1) pour Addition +
Entrer(2) pour Soustraction -
Entrer(3) pour Multiplication *
Entrer(4) pour Division /
Entrer(5) pour la puissance : 1
La somme de 12 + 34 = 46
------------
Continuer le cacul_(x)
Faire un autre calcule_(O/N)?
Retour a l'acceuil_(A)
x
Operateur : +
Saisir une valeur : 4
---46 + 4 = 50.0000---
---46 + 4 = 50---
Continuer le cacul_(x)
Faire un autre calcule_(O/N)?
Retour a l'acceuil_(A)
x
------Equation du 2nd degre-----
------(aX + bx - c)------
Saisiser les valeurs de a,b et c :
si je choisis x pour continuer le calcul, le programme affiche "Equation du 2nd degre".
Aussi, ton programme tel que tu l'as posté sur le forum ne compile pas chez moi. Pour qu'il compile, j'ai dû rectifier toutes les lignes où le contenu des printf entre guillemets était sur plusieurs lignes sans guillemet fermant sur la ligne ouvrante.
Je ne sais pas si cela est dû à un problème de copier-coller sur le forum.
Par exemple, lignes 96 et 97 du dernier code source que tu as posté.
Cela ne peut pas compiler. Si on veut mettre un printf trop long sur plusieurs lignes (là ce n'est pas long, mais admettons) il faut écrire l'une de ces deux formes :
Les deux façons de faire sont équivalentes. Le préprocesseur va considérer traiter cela comme une seule et unique chaîne.
Tu pourrais aussi corriger les nombreuses fautes d'orthographe ou de frappe : "cacul", "calcule", "acceuil", "Implossible", "saisiser", "operateur inconnue" (sic).
Ton code n'implémente pas l'algorithme que j'ai donné et tu n'as tenu compte d'aucune de nos autres observations sauf celle concernant le stockage du résultat.
L'utilisation de goto est en général très mal vue (elle est bannie par certains). Dans de rares cas elle est considérée acceptable si elle simplifie le code C, mais ton code n'est dans aucun de ces cas.
Par exemple :
Revenir sauter en arrière est en général une mauvaise idée.
Tu as un main() qui fait plus de 200 lignes au lieu de le découper en fonctions comme on te l'a dit.
Ton main pourrait faire ceci ce qui permettrait de percevoir immédiatement la structure générale de ton programme :
On fait cela sans goto, dont tu n'as pas besoin, et qui rendent ton code confus (on appelle le genre de code que tu écris du "code spaghetti", ou "programmation spaghetti" : https://fr.wikipedia.org/wiki/Programmation_spaghetti comme on te l'a déjà fait remarquer.