Bug ou erreur ?
Résolu
oli5667
Messages postés
139
Date d'inscription
Statut
Membre
Dernière intervention
-
oli5667 Messages postés 139 Date d'inscription Statut Membre Dernière intervention -
oli5667 Messages postés 139 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai écrit mon code qui est très simple mais les 4 dernières lignes se mettent une après l'autres dans le codes quand je le construit... Pourriez vous m'aidez
Je vous rappelle que se sont seulement les 4 dernières lignes (J'utilise Code::Blocks)
Merci d'avance
J'ai écrit mon code qui est très simple mais les 4 dernières lignes se mettent une après l'autres dans le codes quand je le construit... Pourriez vous m'aidez
#include <stdio.h> #include <stdlib.h> int main() { puts ("Valeurs initiales : 8 et 2"); puts ("---------------------------------"); printf ("Addition : %d\n", 8+2); printf ("Soustraction : %d\n", 8-2); printf ("Multiplication : %d\n", 8*2); printf ("Division : %d\n", 8/2); puts ("---------------------------------"); puts ("---------------------------------"); puts ("Valeurs initiales : 8,2 et 7"); puts ("---------------------------------"); printf ("Addition : %d\n", 8+2+7); printf ("Soustraction : %d\n", 8-2-7); printf ("Multiplication : %d\n", 8*2*7); printf ("Division : %d\n", 8/2/7); puts ("---------------------------------"); puts ("---------------------------------"); puts ("Valeurs initiales : 4.2, 5.4 et 9.21"); puts ("----------------------------------"); printf ("Addition : %2.2f", 4.2+5.4+9.21); printf ("Soustraction : %2.2f", 4.2-5.4-9.21); printf ("Multiplication : %2.4f", 4.2*5.4*9.21); printf ("Division : %2.8f", 4.2/5.4/9.21); return 0; }
Je vous rappelle que se sont seulement les 4 dernières lignes (J'utilise Code::Blocks)
Merci d'avance
A voir également:
- Bug ou erreur ?
- Bug chromecast - Guide
- Bug localisation snap ✓ - Forum Snapchat
- Iptv bug forum ✓ - Forum Box et Streaming vidéo
- Erreur 3000 france tv - Forum Lecteurs et supports vidéo
- Erreur 0x80070643 - Accueil - Windows
3 réponses
Bonjour
Tu as fait de petite erreur dans ton code (les quatre dernières lignes) tu à oublier de faire le retour chariot
à bientôt
Celui qui peut, agit. Celui qui ne peut pas, enseigne. Il y a deux sortes de savants: les spécialistes, qui connaissent tout sur rien, et les philosophes, qui ne connaissent rien sur tout. G.B Shaw
Tu as fait de petite erreur dans ton code (les quatre dernières lignes) tu à oublier de faire le retour chariot
'\n', mais ceci dit la division ne donne pas 0 mais bien 0.571429 avec un cast
float( l'arrondit ) calculatrice = 0,57142857142
à bientôt
Celui qui peut, agit. Celui qui ne peut pas, enseigne. Il y a deux sortes de savants: les spécialistes, qui connaissent tout sur rien, et les philosophes, qui ne connaissent rien sur tout. G.B Shaw
D'accord , mais dans le cas d'une simple division c'est souvent le qui est utiliser.
Après rien n'empêche d'utiliser la double précision ou la précision étendue.
à bientôt
Ici on calcule un double et il est affiché tel quel (pas de conversion en float)
An unsuffixed floating constant has type double. If suffixed by
the letter f or F, it has type float. If suffixed by the letter l
or L, it has type long double.
une constante à virgule est par défaut considérée comme un double.
c'est à distinguer du spécificateur %f de printf, qui a un autre objet, et qui, lui, permet d'afficher un nombre décimal à virgule, ce qui permet d'afficher un double comme un float.
Dal
1.5 est un double, si on veut un float, on met 1.5f.
Pour le printf, c'est c'est que j'ai mis aussi...
D'ailleurs ce n'est pas propre au printf mais à toutes les fonctions à argument variable prenant en paramètre des floats.