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).
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: