Le programme ci-dessous devrait lire dans un tas d'entiers à partir d'un fichier et travailler à leur moyenne:A défaut de lire les valeurs d'un fichier
#include "stdafx.h"
#include <iostream>
#include <string>
#include <fstream>
using namespace std;
int main(int argc, char** argv)
{
ifstream fin("mydata.txt");
int i, value, sum = 0;
for (i = 0; fin >> value; i++)
{
sum += value;
}
if (i > 0)
{
ofstream fout("average.txt");
fout << "Average: " << (sum/i) << endl;
}
else
{
cerr << "No list to average!" << endl;
}
system("PAUSE");
}
Le fichier mydata.txt
existe dans le même répertoire et contient 1 2 3 4 5
mais la sortie est toujours: No list to average!
Qu'est-ce que je fais de mal qu'il saute toujours les pièces de calcul et de génération de fichiers de sortie?
Merci pour votre aide,
H
Que voulez-vous même répertoire? Comme dans vos fichiers source? ou dans le même que l'exécutable construit ?? Cela fonctionne bien pour moi sous Linux. – Muggen
Appelez 'fin.is_open()' pour voir si le fichier a été ouvert correctement. – detunized