Moyenne en c++ [Fermé]

Signaler
-
 Epyon -
bonjour,

j'ai téléchargé sur internet un cours sur le C++ et je suis au chapître des flux d'entrée / sortie. Comme exemple l'auteur a fait un petit programme qui calcul la moyenne de deux chiffres entrez au clavier:

#include <stdio.h>

long double x, y;

int main(void)
{
printf("Calcul de la moyenne\n");
printf("Entrez le premier nombre : ");
scanf("%Lf", &x);
printf("\nEntrez le deuxieme nombre : ");
scanf("%Lf", &y);
printf("\nLa valeur moyenne de %Lf et de %Lf est %Lf. \n", x, y, (x+y)/2);
return 0;
}

Mais le programme ne fonctionne pas et je ne vois pas d'ou vient l'erreur le programe affiche :
Calcul de la moyenne
Entrez le premier nombre : 4

Entrez le deuxieme nombre : 3

La valeur moyenne de 4.000000 et de 0.000000 est 0.000000.

Merci de votre aide.

4 réponses

Messages postés
488
Date d'inscription
vendredi 16 avril 2004
Statut
Membre
Dernière intervention
15 mars 2009
156
Salut,
chez moi ça fonctionne très bien,
je n'ai rien modifié et je n'ai pas trouvé d'erreur

avec certains compilateurs (mais c'est rare) on est obligé de forcer
le type long double :
 printf("\nLa valeur moyenne de %Lf et de %Lf est %Lf. \n", x, y, (long double) ((x+y)/2) ); 
a+
Merci de ton aide j'utilise Dev-C++ mais même en modifiant la ligne il me met toujours pareil.
Messages postés
29171
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
13 février 2020
6 770
Bon chez moi ca marche aussi. Essaie de changer long double par double et les %Lf et %lf. Tu es spur que tu ne t'es pas trompé en recopiant ?

Par ailleurs c'est plus du C que du C++ que tu fais actuellement, car justmeent le C++ ne gère pas les flux de cette façon (cf <iostream>, std::cin, std::cout, opérateurs << et >>)
Merci en mettant le type en double le programme fonctionne. C'est possible que ca soit plus du c le cours commence par ce qui est commun au c et au c++ puis ce spécialise dans le c++.