ผมกำหนดให้เงินเริ่มต้นเป็น 5000 ลองกดเช็คยอดเงินครั้งแรกก็ปกติดี ทีนี้ผมก็ลองฝากดู 500 สรุปยอดออกมาเป็น 5500 แล้วทีนี้ ผมก็วนคำสั่งอีกรอบหนึ่ง คราวนี้ลองเช็คยอดดู ก็เป็น 5500 ปกติดี แต่พอจะถอน ผมกดถอน 500 สรุปยอดเป็น 5000 แต่พอวนคำสั่งอีกรอบมันกลับได้ 4500 อ่ะครับ ผมคิดไม่ออกเลยว่าเกิดจากอะไร ช่วยผมด้วยนะครับ ขอบคุณมากๆ ครับ
[Spoil] คลิกเพื่อดูข้อความที่ซ่อนไว้#include<iostream>
#include<stdio.h>
#include<iomanip>
using namespace std;
class Bank
{
private:
float r=0;
public:
float totalmoney=0;
void numOfmoney(int money){r=money;};
float deposit(void){return totalmoney=totalmoney+r;};
float withdrawl(void){return totalmoney=totalmoney-r;};
float askMoney(void){return totalmoney;};
}bank1,bank2;
main()
{
int choice,id;
float money;
char use;
cout<<"Enter your ID :";
cin>>id;
cout<<"-----------------------"<<endl;
if(id==1954)
{
cout<<"Hi Mr.Tanut"<<endl;
bank1.totalmoney=5000;
do
{
cout<<"-----------------------"<<endl;
cout<<"*****What do you want to do?*****"<<endl;
cout<<"Deposit Press 1"<<endl;
cout<<"Withdrawl Press 2"<<endl;
cout<<"Check balance Press 3"<<endl;
cout<<"Enter Here :";
cin>>choice;
cout<<"-----------------------"<<endl;
if(choice==1)
{
cout<<"Enter number of money :";
cin>>money;
bank1.numOfmoney(money);
cout<<fixed<<setprecision(2);
cout<<"deposit :"<<bank1.deposit()<<endl;
}
else if(choice==2)
{
cout<<"Enter number of money :";
cin>>money;
bank1.numOfmoney(money);
cout<<fixed<<setprecision(2);
cout<<"Withdrawl :"<<bank1.withdrawl()<<endl;
if(bank1.withdrawl()<0)
{
cout<<"insufficient money"<<endl;
}
}
else if(choice==3)
{
cout<<fixed<<setprecision(2);
cout<<"Balance :"<<bank1.askMoney()<<endl;
}
cout<<"Do you want another transection? (y/n):";
cin>>use;
}
while(use=='Y'||use=='y');
}
else
{
cout<<"Wrong ID";
}
}
c++ โปรแกรมฝากถอนเงิน พอถอนเงินแล้วค่ามันลบไปอีกครับ
[Spoil] คลิกเพื่อดูข้อความที่ซ่อนไว้