Moyenne en c++

Epyon -  
 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

blurk Messages postés 486 Date d'inscription   Statut Membre Dernière intervention   160
 
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+
0
Epyon
 
Merci de ton aide j'utilise Dev-C++ mais même en modifiant la ligne il me met toujours pareil.
0
mamiemando Messages postés 33777 Date d'inscription   Statut Modérateur Dernière intervention   7 884
 
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 >>)
0
Epyon
 
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++.
0