Grazie ,solo che ora andando avanti ho riscontrato un' altro problema nel case 3 (procedura CONTROLLOCODPROD) una volta inserito in input il codice prodotto che verrà cercato nella tabella dei prodotti dove devo visualizzare la marca e cercarla nella tabella dei fornitori visualizzando le informazioni dei fornitori di quella marca,se qualcuno mi riesce ad aiutare mi farebbe piacere dato che devo presentarlo tra poco.
#include <iostream>
#include <string>
#include <cmath>
using namespace std;
const int MAX=100;
struct modellodata
{
int giorno;
int mese;
int anno;
};
struct modelloprodotto
{
int codicenumerico;
string nome;
string marca;
float prezzo;
modellodata dataprod;
modellodata datascad;
};
struct modellofornitore
{
string marca;
int partitaiva;
string nomefornitore;
string citta;
modellodata datafornitura;
};
int INSERIMENTODIMENSIONE()
{
int dim;
do
{
cout<<"QUANTI PRODOTTI/FORNITORI SI VUOLE INSERIRE ? "<<endl;
cin>>dim;
} while(dim<1|| dim>MAX);
return dim;
}
void MENU()
{
cout<<"Scegli una delle seguenti procedure da visualizzare:"<<endl;
cout<<""<<endl;
cout<<""<<endl;
cout<<"1 Visualizza tutte le informazione dei fornitori di bari"<<endl;
cout<<"2 Visualizza i nomi dei fornitori della Barilla di Taranto con Fornitura ad Aprile"<<endl;
cout<<"3 Inserire codice prodotto e visualizzare le informazioni del prodotto della marca stessa"<<endl;
cout<<""<<endl;
cout<<""<<endl;
}
void RIEMPIMENTOPRODOTTI(modelloprodotto prodotto_f[100],int dim_f)
{
for(int i=0;i<dim_f;i++)
{
cout<<"INSERIMENTO DEL PRODOTTO"<<endl;
cout<<""<<endl;
cout<<""<<endl;
cout<<"INSERIRE IL CODICE NUMERICO DEL PROD"<<endl;
cin>>prodotto_f[i].codicenumerico;
cout<<"INSERIRE NOME PROD"<<endl;
cin>>prodotto_f[i].nome;
cout<<"INSERIRE MARCA PROD"<<endl;
cin>>prodotto_f[i].marca;
cout<<"INSERIRE PREZZO PROD"<<endl;
cin>>prodotto_f[i].prezzo;
cout<<"INSERIRE GIORNO DELLA DATA DI PRODUZIONE DEL PROD"<<endl;
cin>>prodotto_f[i].dataprod.giorno;
cout<<"INSERIRE MESE DELLA DATA DI PRODUZIONE DEL PROD"<<endl;
cin>>prodotto_f[i].dataprod.mese;
cout<<"INSERIRE ANNO DELLA DATA DI PRODUZIONE DEL PROD"<<endl;
cin>>prodotto_f[i].dataprod.anno;
cout<<"INSERIRE GIORNO DELLA DATA DI SCADENZA DEL PROD"<<endl;
cin>>prodotto_f[i].datascad.giorno;
cout<<"INSERIRE MESE DELLA DATA DI SCADENZA DEL PROD"<<endl;
cin>>prodotto_f[i].datascad.mese;
cout<<"INSERIRE ANNO DELLA DATA DI SCADENZA DEL PROD"<<endl;
cin>>prodotto_f[i].datascad.anno;
cout<<""<<endl;
cout<<""<<endl;
}
}
void RIEMPIMENTOFORNITORI(modellofornitore fornitore_f[100],int dim_f)
{
for(int i=0;i<dim_f;i++)
{
cout<<""<<endl;
cout<<""<<endl;
cout<<"INSERIMENTO INFORMAZIONI DEL FORNITORE"<<endl;
cout<<""<<endl;
cout<<""<<endl;
cout<<"INSERIRE MARCA DEL FORNITORE"<<endl;
cin>>fornitore_f[i].marca;
cout<<"INSERIRE CODICE PARTITA IVA DEL FORNITORE"<<endl;
cin>>fornitore_f[i].partitaiva;
cout<<"INSERIRE IL NOME DEL FORNITORE"<<endl;
cin>>fornitore_f[i].nomefornitore;
cout<<"INSERIRE CITTA-SEDE DEL FORNITORE"<<endl;
cin>>fornitore_f[i].citta;
cout<<"INSERIRE IL GIORNO DELLA FORNITURA"<<endl;
cin>>fornitore_f[i].datafornitura.giorno;
cout<<"INSERIRE IL MESE DELLA FORNITURA"<<endl;
cin>>fornitore_f[i].datafornitura.mese;
cout<<"INSERIRE L'ANNO DELLA FORNITURA"<<endl;
cin>>fornitore_f[i].datafornitura.anno;
cout<<""<<endl;
cout<<""<<endl;
}
}
void RICERCABARI(modellofornitore fornitore_f[100],int dim_f)
{
for(int i=0;i<dim_f;i++)
{
if(fornitore_f[i].citta=="Bari")
{
cout<<""<<endl;
cout<<""<<endl;
cout<<"INFORMAZIONI DEL FORNITORE/FORNITORE CHE OPERA/ANO A BARI"<<endl;
cout<<""<<endl;
cout<<""<<endl;
cout<<"MARCA DEL FORNITORE"<<fornitore_f[i].marca<<endl;
cout<<"CODICE PARTITA IVA DEL FORNITORE"<<fornitore_f[i].partitaiva<<endl;
cout<<"IL NOME DEL FORNITORE"<<fornitore_f[i].nomefornitore<<endl;
cout<<"IL GIORNO DELLA FORNITURA"<<fornitore_f[i].datafornitura.giorno<<endl;
cout<<"IL MESE DELLA FORNITURA"<<fornitore_f[i].datafornitura.mese<<endl;
cout<<"L'ANNO DELLA FORNITURA"<<fornitore_f[i].datafornitura.anno<<endl;
cout<<""<<endl;
cout<<""<<endl;
}
}
}
void RICERCABARILLATARANTO(modellofornitore fornitore_f[100],int dim_f)
{
for(int i=0;i<dim_f;i++)
{
if(fornitore_f[i].marca=="Barilla")
{
if(fornitore_f[i].citta=="Taranto")
{
if(fornitore_f[i].datafornitura.mese=4) //4 perchè la variabile mese nella struct si trova di tipo int
{
cout<<"IL NOME DEL FORNITORE DELLA BARILLA DI TARANTO CHE HA FORNITO PRODOTTI AD APRILE :"<<fornitore_f[i].nomefornitore<<endl;
}
}
cout<<""<<endl;
cout<<""<<endl;
}
}
}
void CONTROLLOCODPROD(modelloprodotto prodotto_f[100],modellofornitore fornitore_f[100],int dim_f,char ricerca)
{
cout<<"INSERIRE CODICE PRODOTTO DA CONTROLLARE"<<endl;
cin>>ricerca;
for(int i=0;i<dim_f;i++)
{
if(prodotto_f[i].codicenumerico==ricerca)
{
cout<<"LA MARCA DI QUESTO PRODOTTO E'"<<prodotto_f[i].marca<<endl;
if(prodotto_f[i].marca==fornitore_f[i].marca)
{
cout<<"CODICE PARTITA IVA DI QUESTO FORNITORE"<<fornitore_f[i].partitaiva<<endl;
cout<<"NOME DI QUESTO FORNITORE"<<fornitore_f[i].nomefornitore<<endl;
cout<<"CITTA-SEDE DI QUESTO FORNITORE"<<fornitore_f[i].citta<<endl;
cout<<"IL GIORNO DELLA FORNITURA"<<fornitore_f[i].datafornitura.giorno<<endl;
cout<<"IL MESE DELLA FORNITURA"<<fornitore_f[i].datafornitura.mese<<endl;
cout<<"L'ANNO DELLA FORNITURA"<<fornitore_f[i].datafornitura.anno<<endl;
}
}
}
}
int main()
{
int dim,SCELTA;
char ricerca;
modelloprodotto prodotto[MAX];
dim=INSERIMENTODIMENSIONE();
RIEMPIMENTOPRODOTTI(prodotto,dim);
modellofornitore fornitore[MAX];
RIEMPIMENTOFORNITORI(fornitore,dim);
MENU();
cin>>SCELTA;
switch (SCELTA )
{
case 1:RICERCABARI(fornitore,dim);
break;
case 2:RICERCABARILLATARANTO(fornitore,dim);
break;
case 3:CONTROLLOCODPROD(prodotto,fornitore,dim,ricerca);
break;
}
system("pause");
}