Sax_93
10-05-2011, 00:01
ciao io ho iniziato da poco a lavorare con le classi derivate...
il mio programma dovrebbere essere una specie di banca, dove si inserisce tutti i dati della classe ke ho messo di sotto, poi si preleva il saldo e lo si aggiorna; allostesso modo gli si può agiungere anke dei soldi al saldo tuo e lo si aggiorna sempre...
Io del programma ho trovato degli errori sintattici e non so se il programma funge, mi potete dare una mano e magare spiegarmelo anke?...
Ecco il codice:
#include <iostream>
#include <stdlib.h>
#include <string.h>
using namespace std;
#define MAX 20
class conto {
protected:
int numero_conto;
char intestatario[MAX];
float saldo;
public:
void registra(int numeroc,char intestatar[],float sald){
numero_conto=numeroc;
strcpy(intestatario,intestatar);
saldo=sald;
return;
}
void visualizza(){
cout<<numero_conto;
cout<<intestatario;
cout<<saldo;
return;
}
};
conto cont[MAX];
class conto_corrente : public conto{
char banca[MAX];
public:
void preleva(float preleva_saldo){
saldo-=preleva_saldo;
return;
}
void versa(float versa_saldo){
saldo+=versa_saldo;
return;
}
void mostra(){
cout<<saldo;
return;
}
};
conto_corrente contoC[MAX];
int registra(){
int numero_conto,risposta,i=-1;
char intestatario[MAX];
float saldo;
do{
i++;
cout<<"Inserisci il NUMERO DI CONTO del cliente"<<"%d"<<endl;
cin>>numero_conto;
cout<<"Inserisci l'INTESTATARIO del numero di conto"<<"%d"<<endl;
cin>>intestatario;
cout<<"Inserisci il SALDO del numero di conto del cliente"<<"%d"<<endl;
cin>>saldo;
cont[i].registra(numeroc,intestatar,sald);
conut<<"Vuoi inserire un altro cliente? (0=NO 1=SI)"<<endl;
cin>>risposta;
}while(risposta==1);
return i;}
void preleva_soldi(){
int k=0,risposta1;
float preleva_saldo;
do{
cout<<"Quanto vuoi prelevare?";
cin>>preleva_saldo;
contoC[k].preleva(preleva_saldo);
cout<<"Vuoi prelevare altri soldi? (0=NO 1=SI)"<<endl;
cin>>risposta1;
}while(risposta1==1);
return;}
void versa_soldi(){
int j=0,risposta2;
float versa_saldo;
do{
cout<<"Quanto vuoi versare?";
cin>>versa_saldo;
contoC[j].versa(versa_saldo);
cout<<"Vuoi versare altri soldi? (0=NO 1=SI)"<<endl;
cin>>risposta2;
}while(risposta2==1);
return;}
void visualizza_saldo(){
cout<<"Il tuo saldo e': "<<"%5.2f"<<mostra.saldo;
return;}
main(){
registra();
preleva_soldi();
versa_soldi();
visualizza_saldo();
system("PAUSE");
return 0;
}
il mio programma dovrebbere essere una specie di banca, dove si inserisce tutti i dati della classe ke ho messo di sotto, poi si preleva il saldo e lo si aggiorna; allostesso modo gli si può agiungere anke dei soldi al saldo tuo e lo si aggiorna sempre...
Io del programma ho trovato degli errori sintattici e non so se il programma funge, mi potete dare una mano e magare spiegarmelo anke?...
Ecco il codice:
#include <iostream>
#include <stdlib.h>
#include <string.h>
using namespace std;
#define MAX 20
class conto {
protected:
int numero_conto;
char intestatario[MAX];
float saldo;
public:
void registra(int numeroc,char intestatar[],float sald){
numero_conto=numeroc;
strcpy(intestatario,intestatar);
saldo=sald;
return;
}
void visualizza(){
cout<<numero_conto;
cout<<intestatario;
cout<<saldo;
return;
}
};
conto cont[MAX];
class conto_corrente : public conto{
char banca[MAX];
public:
void preleva(float preleva_saldo){
saldo-=preleva_saldo;
return;
}
void versa(float versa_saldo){
saldo+=versa_saldo;
return;
}
void mostra(){
cout<<saldo;
return;
}
};
conto_corrente contoC[MAX];
int registra(){
int numero_conto,risposta,i=-1;
char intestatario[MAX];
float saldo;
do{
i++;
cout<<"Inserisci il NUMERO DI CONTO del cliente"<<"%d"<<endl;
cin>>numero_conto;
cout<<"Inserisci l'INTESTATARIO del numero di conto"<<"%d"<<endl;
cin>>intestatario;
cout<<"Inserisci il SALDO del numero di conto del cliente"<<"%d"<<endl;
cin>>saldo;
cont[i].registra(numeroc,intestatar,sald);
conut<<"Vuoi inserire un altro cliente? (0=NO 1=SI)"<<endl;
cin>>risposta;
}while(risposta==1);
return i;}
void preleva_soldi(){
int k=0,risposta1;
float preleva_saldo;
do{
cout<<"Quanto vuoi prelevare?";
cin>>preleva_saldo;
contoC[k].preleva(preleva_saldo);
cout<<"Vuoi prelevare altri soldi? (0=NO 1=SI)"<<endl;
cin>>risposta1;
}while(risposta1==1);
return;}
void versa_soldi(){
int j=0,risposta2;
float versa_saldo;
do{
cout<<"Quanto vuoi versare?";
cin>>versa_saldo;
contoC[j].versa(versa_saldo);
cout<<"Vuoi versare altri soldi? (0=NO 1=SI)"<<endl;
cin>>risposta2;
}while(risposta2==1);
return;}
void visualizza_saldo(){
cout<<"Il tuo saldo e': "<<"%5.2f"<<mostra.saldo;
return;}
main(){
registra();
preleva_soldi();
versa_soldi();
visualizza_saldo();
system("PAUSE");
return 0;
}