C++第12週プロジェクト5.2——銀行システム関数版
5366 ワード
コースのトップページは次のとおりです.http://blog.csdn.net/sxhelijian/article/details/11890759
【プロジェクト5-銀行システム】これは私たちがしなければならない本当のプロジェクトです!関連する技術はすべて使いましたが、プログラムは本当に長いです.勉强の中で、いつも达成感がほしいです.あなたが何かをしたことがないとき、いつも学んだ知識が何ができるか分からない.学習の過程で、似たようなプロジェクトを完成して、それはとてもクールなことで、私たちにもっと情熱を持たせます.心の準備をしておくと、中には難しいかもしれませんが、落ち着いて完成できると信じています.プロジェクトをするには、皆さんの生活実践と結びつけたほうがいいと思います.また、私たちの授業と同期することもできます.両方を結合して、銀行を開いて、ATMを作りましょう.もしATMを使ったことがなければ、まずあなたの銀行カードで一度お金を取りに行きましょう.私たちはまずカードを挿入して、パスワードを入力します.純粋なソフトウェアシミュレーションをして、私たちはカードリーダーを持っていません.いいでしょう.カードはもう挿入されたと思います.みんなが少しずつできるように、私はその中の仕事を分解しようとして、私たちは次第に改善して、“増量式”に仕事を完成します.任務を終えるたびに、このような成長段階を記録するブログを送ることができます.
タスク2:関数の導入によるプログラム構造の改善
各業務はそれぞれ1つの関数を作成して完成する.提示機能メニュー(1.照会、2.引き出し、3.預金、4.振替、5.改密、0.退出)後、ユーザーが機能選択を入力し、switchマルチブランチで対応する機能を完了する.入力1(クエリー)、関数showbalance()を呼び出し、「残高はxxxx.xx元です.」 を表示します.入力2(引き出し)、drawmoney()を呼び出し、引き出しを完了します.引き出し金額を入力する必要があります.残高が足りない場合は、引き出しができないことを示すプロンプトが表示されます.そうしないと、勘定科目の残高が減少します.お金を引き出した後にヒントを与えます:“あなたの残高はまだXXX.XX元があります.”実際の業務では、計算の問題にも関連しています.この問題はしばらく考慮しないで、開拓の提案として、ここで利息を計算することを考慮することができます. 入力3(預金):deposit()を呼び出し、預金を完了し、残高が増加します(中毒でしょう、いくら貯金したいですか).预金后提示:あなたの残高はXXX.XX元です. 入力4(転記):transferAccounts()を呼び出し、転記を完了し、転出機能のみをサポートします.相手口座番号と振替金額を入力することを要求し、金額が十分であれば、振替を完了し、現在の口座の残高が減少し、相手口座の残高が増加する.本題は1つのアカウントしかないので、相手のアカウントの増加操作は先にしません. 入力5(改密):updatePassword()を呼び出してパスワードを変更します.古いパスワードを入力してから秘密を変更するように要求します.新しいパスワードは2回入力する必要があります.2回が完全に同じ場合にのみ変更を完了できます. 0を入力すると、「ありがとうございます.また来てください.」と表示され、ループを終了し、呼び出し関数に戻ります. 入力は0-5ではありません.
参考解答:
====================================
|== IT学子成長指導コラム記事分類目録(不定期更新)=|
|==C++教室オンラインコラム賀利堅課程教育リンク(課程別)=|
======== IT菜鳥のために滑走路を敷き、学生と一緒に楽しみと情熱を楽しむ大学======
【プロジェクト5-銀行システム】これは私たちがしなければならない本当のプロジェクトです!関連する技術はすべて使いましたが、プログラムは本当に長いです.勉强の中で、いつも达成感がほしいです.あなたが何かをしたことがないとき、いつも学んだ知識が何ができるか分からない.学習の過程で、似たようなプロジェクトを完成して、それはとてもクールなことで、私たちにもっと情熱を持たせます.心の準備をしておくと、中には難しいかもしれませんが、落ち着いて完成できると信じています.プロジェクトをするには、皆さんの生活実践と結びつけたほうがいいと思います.また、私たちの授業と同期することもできます.両方を結合して、銀行を開いて、ATMを作りましょう.もしATMを使ったことがなければ、まずあなたの銀行カードで一度お金を取りに行きましょう.私たちはまずカードを挿入して、パスワードを入力します.純粋なソフトウェアシミュレーションをして、私たちはカードリーダーを持っていません.いいでしょう.カードはもう挿入されたと思います.みんなが少しずつできるように、私はその中の仕事を分解しようとして、私たちは次第に改善して、“増量式”に仕事を完成します.任務を終えるたびに、このような成長段階を記録するブログを送ることができます.
タスク2:関数の導入によるプログラム構造の改善
各業務はそれぞれ1つの関数を作成して完成する.提示機能メニュー(1.照会、2.引き出し、3.預金、4.振替、5.改密、0.退出)後、ユーザーが機能選択を入力し、switchマルチブランチで対応する機能を完了する.
参考解答:
#include<iostream>
using namespace std;
int password = 123456;
double balance = 10000;
bool pass();
void work();
void showbalance();
void drawmoney();
void deposit();
void transferAccounts();
void updatePassword();
int main()
{
cout<<" ……"<<endl;
if(pass())
work();
else
cout<<" , ……"<<endl;
return 0;
}
//
// : -true; -false
bool pass()
{
bool bPass=false; // , true
int iPass;
int num=1;
do
{
cout<<" ";
if(num>1)
cout<<"( : "<<num<<" , )";
cin>>iPass;
num++;
if(iPass==password)
bPass=true;
}
while(!bPass&&num<4); //
return bPass; // true, , ……
}
//
void work()
{
char cChoice;
bool bExit = false;
do
{
cout<<endl<<"* :"<<endl;
cout<<"* 1. 2. 3. 4. 5. 0. "<<endl;
cout<<"* (0-5):";
cin>>cChoice;
switch(cChoice)
{
case '1':
showbalance();
break;
case '2':
drawmoney();
break;
case '3':
deposit();
break;
case '4':
transferAccounts();
break;
case '5':
updatePassword();
break;
case '0':
cout<<" . "<<endl;
bExit=true;
}
}
while(!bExit);
return;
}
//
void showbalance()
{
cout<<" :"<<balance<<" "<<endl;
}
//
void drawmoney()
{
double money;
cout << " :";
cin >> money;
// , , ,
if(money<=balance)
{
balance-=money; //
cout<<" , :"<<balance<<" 。"<<endl;
}
else
{
cout<<" , 。"<<endl;
}
}
//
void deposit()
{
double money;
cout << " :";
cin >> money;
// , , ,
balance+=money; //
cout<<" , :"<<balance<<" 。"<<endl;
}
//
void transferAccounts()
{
double money;
int iAccount2;
cout << " :";
cin >> money;
cout << " :";
cin >> iAccount2; // , ,
if(money<=balance)
{
balance-=money; //
// ,
cout<<" "<<iAccount2<<" , :"<<balance<<" 。"<<endl;
}
else
{
cout<<" , 。"<<endl;
}
}
void updatePassword()
{
int p1,p2;
cout << " :";
cin >> p1;
if(p1!=password)
{
cout<<" , 。"<<endl;
}
else
{
cout << " :";
cin >> p1;
cout << " :";
cin >> p2;
if(p1==p2)//
{
password=p1;
cout<<" !"<<endl;
}
else
{
cout<<" , 。"<<endl;
}
}
}
====================================
|== IT学子成長指導コラム記事分類目録(不定期更新)=|
|==C++教室オンラインコラム賀利堅課程教育リンク(課程別)=|
======== IT菜鳥のために滑走路を敷き、学生と一緒に楽しみと情熱を楽しむ大学======