bonjour à tous.
j'avais commencé à apprendre les bases du C++ mais vite arrêté par manque de temps...
aujourd'hui j'aimerais écrire un petit programme qui :
ouvre et lit un "fichier.txt" (~2000 lignes), et fait le cumul des nombres qui se trouvent juste avant chaque caractère "€".
j'ai comme base un bout de code qui fait un cumul, mais le fichier ne doit contenir que des chiffres tel 0 2 5 8 etc...
c'est à améliorer... :
Code :
- #include <fstream> // pour ifstream ( flux fichier)
- #include <iostream> // pour cin et cout
- #define NOM_FICHIER "liste.txt"
- using namespace std; // déclaration espace de nom STL par défaut (éviter la résolution de nom d'espace std:: à chaque fois)
- int main(int argc, char *argv[])
- {
- int Cumul; // cumul des chiffres
- int Num; // chiffre individuel à lire
- ifstream Fichier; // objet Fichier à lire
- Fichier.open(NOM_FICHIER); // ouvrir le flux E/S (Fichier)
- if (!Fichier) { // si le fichier est ouvert correctement
- cout << "Opps! erreur d'ouverture du fichier :" << NOM_FICHIER << endl; // informe d'une erreur
- cout << "Presser une touche pour terminer...";
- cin.get(); // attend une entrée clavier
- return 1; // sortie signalant un échec
- }
- Cumul = 0; // initialise le cumul
- while (Fichier >> Num) // lire tant qu'il y a des chiffres à lire
- Cumul += Num; // ajoute le chiffre lu au cumul
- Fichier.close(); // fermer le flux E/S (Fichier)
- cout << "Cumul = " << Cumul << endl; // aficher le cumul et un CR/LF
- cout << "Presser une touche pour terminer...";
- cin.get(); // attend une entrée clavier
- return 0;
- }
|
si quelqu’un pouvait m'aider...,
j'ai clairement des lacunes en C++, mais j'ai je voudrais m'améliorer.
(au passage, si vous connaissez un bon site pour apprendre de bonnes bases).
merci.
Message édité par redscreen le 10-12-2020 à 13:01:08