会员卡系统
来源:互联网 发布:sql通用查询器 编辑:程序博客网 时间:2024/04/27 15:17
很久之前写的小作业
#include<iostream>#include<string>#include<cstring>#include<cstdio>#include<vector>#include<cmath>using namespace std;class RMB {protected: int yuan,jiao,fen; bool mark; // >0 ture ; <0 false ;public: RMB(int y=0,int j=0,int f=0,bool m=false) { yuan=y; jiao=j; fen=f; mark=m; } RMB(double n=0) { if(n>=0) mark=true; else mark=false; yuan=(int) (n); jiao=((int)(n*10))%10; fen=((int)(n*100))%10; } void setRMB(double n) { if(n>=0) mark=true; else { mark=false; n=-n; } yuan=(int)(n); jiao=((int)(n*10))%10; fen=((int)(n*100))%10; } void printrmb() { cout<<yuan<<"元"<<jiao<<"角"<<fen<<"分"; } double doublermb() { return yuan+0.1*jiao+fen*0.01; } friend ostream & operator<<(ostream&,RMB&);};ostream & operator << (ostream & output,RMB& obj){ if(!obj.mark) cout<<"-"; output<<obj.yuan<<"元"<<obj.jiao<<"角"<<obj.fen<<"分"; return output;}class member {protected: string name; int num,password; long long tel; static int totalnum;public: member(string pname="costumers",int pas=123456,long long int t=0) { name=pname; num=totalnum++; num++; password=pas; tel=t; } void setmember(string pname="costumers",int pas=123456,long long int t=0) { name=pname; password=pas; tel=t; } double gettotalnum() { return totalnum; } void printmember(); ~member();};int member::totalnum=0;void member::printmember(){ cout<<"编号:"<<num<<"\t姓名:"<<name<<"\t电话:"<<tel<<endl;}member::~member(){}class membercard : public RMB,public member{ static double totaladd; static double totalminus;public: membercard(string pname="costumers",int pas=123456,long long int t=0,double money=0):RMB(money),member(pname,pas,t) { totaladd+=money; } void setmembercard(string pname="costumers",int pas=123456,long long int t=0,double money=0) { setmember(pname,pas,t); setRMB(money); totaladd+=money; } void addmoney(double n=0) { double tt=doublermb()+n; yuan=(int)(tt); jiao=((int)(tt*10))%10; fen=((int)(tt*100))%10; totaladd+=n; RMB temp(n); cout<<"充值成功!本次充值:\t"; cout<<temp; cout<<endl; cout<<"账户余额:\t"; printrmb(); cout<<endl; } void minusmoney(double n=0) { int pas; cout<<"请输入密码:"<<endl; cin>>pas; while(password!=pas) {cout<<"密码错误!请重新输入!"<<endl; cin>>pas;} if(doublermb()>=n) { totalminus+=n; double tt=doublermb()-n; yuan=(int)(tt); jiao=((int)(tt*10))%10; fen=((int)(tt*100))%10; RMB temp(n); cout<<"本次消费:"<<temp<<endl<<"账户余额:"; printrmb(); cout<<endl; } else cout<<"账户余额不足!"<<endl; } void changepassword() { int pas; cout<<"请输入原始密码:"<<endl; cin>>pas; while(password!=pas) { cout<<"密码错误!请重新输入!"<<endl; cin>>pas; } cout<<"请输入新密码:"<<endl; cin>>pas; password=pas; cout<<"修改成功!"<<endl; } double gettotaladd(){return totaladd;} double gettotalminus(){return totalminus;}};double membercard::totaladd=0;double membercard::totalminus=0;vector<membercard>person;void work1(){ string name; int pass; long long int phone; double mon; membercard people; cout<<"新建第"<<(people.gettotalnum())<<"个会员:"<<endl; cout<<"请输入姓名:\t"; cin>>name; cout<<endl; cout<<"请输入密码(6位数字):\t"; cin>>pass; cout<<endl; cout<<"请输入电话:\t"; cin>>phone; cout<<endl; cout<<"请输入充值金额:\t"; cin>>mon; cout<<endl; people.setmembercard(name,pass,phone,mon); person.push_back(people); cout<<"创建成功,账户余额:\t"; people.printrmb(); cout<<endl;}void work2(){ int number; double money; cout<<"请输入您的编号:\t"; cin>>number; cout<<endl; while(number>person.size()||number<=0) { cout<<"编号不存在!请重新输入!"<<endl; cin>>number; } number--; cout<<"个人信息:\t"; person[number].printmember(); cout<<"请输入充值金额:\t"; cin>>money; cout<<endl; person[number].addmoney(money);}void work3(){ int number; double money; cout<<"请输入您的编号:\t"; cin>>number; cout<<endl; while(number>person.size()||number<=0) { cout<<"编号不存在!请重新输入!"<<endl; cin>>number; } number--; cout<<"个人信息:\t"; person[number].printmember(); cout<<"请输入消费金额:\t"; cin>>money; person[number].minusmoney(money);}void work4(){ int number; cout<<"请输入您的编号:\t"; cin>>number;cout<<endl; while(number>person.size()||number<=0) { cout<<"编号不存在!请重新输入!"<<endl; cin>>number; } number--; cout<<"个人信息:\t"; person[number].printmember(); person[number].changepassword();}void work5(){ int number; cout<<"请输入您的编号:\t"; cin>>number;cout<<endl; while(number>person.size()||number<=0) { cout<<"编号不存在!请重新输入!"<<endl; cin>>number; } number--; cout<<"个人信息:\t"; person[number].printmember(); cout<<"账户余额:\t"; person[number].printrmb(); cout<<endl;}void work6(){ cout<<"当前会员数为:\t"<<person[0].gettotalnum()<<endl; cout<<"当前充值总金额为:\t"<<person[0].gettotaladd()<<endl; cout<<"当前消费总金额为:\t"<<person[0].gettotalminus()<<endl;}int main(){ //freopen("aaa","r",stdin); int cas=1; while(cas) { cout<<"请选择操作(1:新建会员,2:已有会员充值,3.已有会员消费,4.已有会员修改密码,5.已有会员余额查询,6.输出当前店会员数和营业额,0.退出):"<<endl; cin>>cas; switch(cas) { case 1: work1(); break; case 2: work2(); break; case 3: work3(); break; case 4: work4(); break; case 5: work5(); break; case 6: work6(); break; case 0: break; } } return 0;}
阅读全文
0 0
- 会员卡系统
- 会员卡管理系统
- 研读会员卡系统的总结
- 会员卡管理系统技术解析(六) 会员卡退卡
- 会员卡管理系统技术解析(八)添加会员卡挂失
- 会员卡管理系统技术解析(十五)会员卡状态变动
- 会员卡管理系统技术解析(十六)会员卡有效期更改
- 微信会员卡,微信会员系统
- iOS App 项目:会员卡管理系统设计方案
- 精仿一卡易会员管理软件,电子会员卡系统
- 会员卡管理系统技术解析(二)会员卡调拨查询和修改
- 会员卡管理系统技术解析(七) 会员卡建卡记录查询
- 会员卡管理系统技术解析(三)添加会员卡调拨信息
- 会员卡管理系统技术解析(四)会员卡发放记录查询
- 会员卡管理系统技术解析(八)会员卡建卡记录添加
- 会员卡管理系统技术解析(九)会员卡领卡记录查询
- 会员卡管理系统技术解析(十) 会员卡领卡记录添加
- 会员卡管理系统技术解析(五)添加会员卡发放信息
- 用python实现希尔排序(shell_sort)
- 对象序列化
- nginx 动静分离实现负载均衡
- class属性标签操作记录
- ios下使用speex进行音频压缩
- 会员卡系统
- eclipse安装离线插件后可能不会重新加载的解决办法
- cmd下ftp登陆成功却ls显示Can't build data connection: Connection timed out
- [agc010d]Decrementing
- 变量在进行计算时类型转换问题
- 网络性能评估工具Iperf详解
- 安装selenium框架
- 第七周项目2
- 51nod 1424 零树(树dp)