PROBLEMA Aiuto Con Programma C++.

N3w_W0rld

Nuovo Utente
5
1
Ciao a tutti! Da ormai un paio di settimane sto portando avanti la mia esperienza con C++, nei giorni scorsi ho provato a creare un programma per l'acquisizione di dati su file di testo, visualizzazione dei dati nei file prima citati e per la ricerca di determinati articoli, il tutto accessibile da un menu iniziale.
Completato il mio progetto e avviata la compilazione mi sono usciti un paio di errori che non riesco a risolvere, spero che qualcuno possa aiutarmi :)
Il "main" e "operazioni.h" sembrano funzionare, "operazioni.cpp" invece mi da problemi....alle righe 6 e 18 mi dice "qualified-id in declaration before '(' token",alla riga 98 mi dice "expected '}' at end of input" (ho provato ad aggiungere parentesi ma non ha funzionato).

C:
>>>main.cpp

#include <iostream>
#include <fstream>
#include <windows.h>
#include "Operazioni.h"
using namespace std;

/*Pineapple Program 0.5, Ghisa, 1/11/2016 */

string nomeArticolo,nomeMese,nome,nomeDaRicercare;
double prezzoArticolo,entrate,uscite;
char opzione,Menu(),pos;
void FileArticoli(),FileBilancio(),LeggiArticoli(),LeggiBilancio();
int Cerca();

int main(int argc, char** argv) {
 cout<<"Benvenuto, inserisci un nome utente: ";
 cin>>nome;
 cout<<"Salve "<<nome<<" come posso aiutarti?";
 do{ opzione=Menu();
     switch(opzione){
    
     case 'a':fflush(stdin);
              system("cls");
              cout<<"N.B.: per modifiche future accedere direttamente al file di testo.";
              FileArticoli();
              break;
             
         case 'b':fflush(stdin);
              system("cls");
              cout<<"N.B.: per modifiche future accedere direttamente al file di testo.";
              FileBilancio();
              break;
             
   case 'c':fflush(stdin);
              system("cls");
      cout<<"Inserire nome articolo da ricercare: ";
      getline(cin,nomeDaRicercare);
      pos=Cerca();
      if(pos==-1){
       cout<<"\n L'articolo "<<nomeDaRicercare<<" non è presente nell'inventario.";
      }else{ cout<<"\n L'articolo "<<nomeDaRicercare<<" è presente nell'inventario.";}
      break;
     
   case 'd':fflush(stdin);
              system("cls");
      LeggiArticoli();
      break;
     
   case 'e':fflush(stdin);
              system("cls");
      LeggiBilancio();
      break;
     
   case 'f':system("cls");
            cout<<"Buona giornata "<<nome;
      system("exit");               
  }
 }while(opzione!='f');
 return 0;
}

>>>Operazioni.h

#ifndef OPERAZIONI_H
#define OPERAZIONI_H
#include <iostream>
using namespace std;

class Operazioni
{
 public:
         Operazioni();
        
         char Menu();
         int Cerca();
         void FileArticoli();
         void FileBilancio();
         void LeggiArticoli();
         void LeggiBilancio();
    //protected:
};

#endif

>>>Operazioni.cpp

#include "Operazioni.h"


Operazioni::Operazioni  (){
 
 char Operazioni::Menu(){
     char scelta;
  cout<<"\n Acqisisci articoli ------------> a ";
  cout<<"\n Acquisisci contabilità mensile > b ";
  cout<<"\n Cerca tra gli articoli --------> c ";
  cout<<"\n Visualizza articoli -----------> d ";
  cout<<"\n Visualizza bilancio -----------> e ";
  cout<<"\n Fine --------------------------> f ";
  cin>> scelta;
  return scelta;
  }
 
 void Operazioni::FileArticoli(){
  int dimInventario;
  string nomeArticolo;
  double prezzoArticolo;
  fstream primoFile;
  primoFile.open("Articoli.txt",ios::out);
  cout<<"Inserire il numero di articoli da registrare: ";
  cin>>dimInventario;
  for(int i=0;i<dimInventario;i++){
   cin.ignore();
   cout<<"\n Inserire nome articolo: ";
   getline(cin,nomeArticolo);
   primoFile<<nomeArticolo<<" €(euro) ";  // forse € da togliere
   cout<<"\n Inserire prezzo: ";
   cin>>prezzoArticolo;
   primoFile<<prezzo<<endl;
   }}
  
 void Operazioni::FileBilancio(){
  int mensilitaAnnua=12;
  string nomeMese;
  double entrate,uscite;
  fstream secondoFile;
  secondoFile.open("Bilancio.txt",ios::out);
  cin>> mensilitaAnnua;
  for(int i=0;i<mensilitaAnnua;i++){
   cin.ignore();
   cout<<"\n Inserire nome mese: ";
   cin>>nomeMese;
   secondoFile<<nomeMese<<" ent ";
   cout>>"\n Inserire valore entrate del mese: ";
   cin>>entrate;
   secondoFile<<entrate<<" ext ";
   cout>>"\n Inserire il valore uscite del mese: ";
   cin>>uscite;
   secondoFile<<uscite<<endl;}
   }
 
 int Operazioni::Cerca() {
  int dimInventario;
  string nomeArticolo,nomeDaRicercare;
  double prezzoArticolo;
     fstream primoFile;
     primoFile.open("Articoli.txt",ios::in);
     for(int i=0;i<dimInventario;i++)
       primoFile>>nomeArticolo;  // ???
         if(nomeArticolo==nomeDaRicercare)
            return nomeDaRicercare;
         return -1;
  primoFile.close();   
     }
    
 void Operazioni::LeggiArticoli() {
   string nomeArticolo;
   double prezzoArticolo;
   fstream primoFile;
   primoFile.open("Articoli.txt",ios::in);
   while(!primoFile.eof()){
   primoFile>>nomeArticolo;
   cout<<"\n L'articolo: "<<nomeArticolo;
   primoFile>>prezzoArticolo;
   cout<<"\n ha un prezzo di euro pari a: "<<prezzoArticolo;
      }primoFile.close();
   }
  
 void Operazioni::LeggiBilancio() {
  string nomeMese;
  double entrate,uscite;
  fstream secondoFile;
  secondoFile.open("Bilancio.txt",ios::in);
  while(!secondoFile.eof()){
     secondoFile>>nomeMese;
     cout<<"\n Nel mese di "<<nomeMese<<" ";
     secondoFile>>entrate;
     cout<<"\n ci sono stati i seguenti euro in entrata: "<<" ";
     secondoFile>>uscite;
     cout<<"\n e le seguenti uscite: "<<uscite;}
  secondoFile.close();
 } 
   
}
 
Ultima modifica da un moderatore:

Entra

oppure Accedi utilizzando
Discord Ufficiale Entra ora!