電腦遊戲製作開發設計論壇 首頁 電腦遊戲製作開發設計論壇
任何可以在PC上跑的遊戲都可以討論,主要以遊戲之製作開發為主軸,希望讓台灣的遊戲人有個討論、交流、教學、經驗傳承的園地
 
 常見問題常見問題   搜尋搜尋   會員列表會員列表   會員群組會員群組   會員註冊會員註冊 
 個人資料個人資料   登入檢查您的私人訊息登入檢查您的私人訊息   登入登入 

Google
關於goto 和 cin 各位專業人士幫忙一下

 
發表新主題   回覆主題    電腦遊戲製作開發設計論壇 首頁 -> 遊戲程式初級班:語法及基礎概念
上一篇主題 :: 下一篇主題  
發表人 內容
followagpop
稍嫌羞澀的路人


註冊時間: 2009-04-26
文章: 3

72.82 果凍幣

發表發表於: 2009-4-26, PM 11:56 星期日    文章主題: 關於goto 和 cin 各位專業人士幫忙一下 引言回覆

代碼:
#include <iostream>
#include <time.h>

using namespace std;       
 
int main()
{
   int a=7000, b=500, c=450, d=900, money=1500;

title:
       cout << "歡迎光臨,叮叮勒拜服飾大賣場\n"
            << "本店裡有最新,最流行,最漂亮的衣服\n"
            << "來叮叮勒拜,讓您一次滿載而歸\n";
       system("pause");

menu:       
       cout << "\n您的現金總共剩餘:" << money << "\n";       
       cout << "\n下面是特價物品的編號:\n"
       << "a.衣服\tb.褲子\tc.鞋子\td.外套\n"
       << "\n請輸入您所想購買的物品編號:";
       cin >> a >> b >> c >> d;
       if ( money < a )
       {
       cout << "\n您的金額不足,請重新選購\n";
       system("pause");      //////他都一直跑到這邊//////
       system("cls"); 
       goto menu;
       }
       return 0;
}


到輸入的地方 我輸入a下去測試時 顯示金額不足後 goto menu;
問題來了..
goto menu後 不是會到 cin >> a 輸入的地方停住嗎?
但是他一直跑到 最下面的system("pause"); 這個地方 怎麼辦??
請各位專業人士 幫解一下!!!
回頂端
檢視會員個人資料 發送私人訊息
babu61509
散播福音的祭司


註冊時間: 2007-08-26
文章: 142

681.01 果凍幣

發表發表於: 2009-4-27, AM 10:20 星期一    文章主題: 引言回覆

跑到那邊很正常阿 = _="

因為程式是一行一行的往下跑,只要if成立,你的 system("pause"); 又放在 goto menu; 之前所以會先執行到。

_________________
已經畢業了!!
回頂端
檢視會員個人資料 發送私人訊息
followagpop
稍嫌羞澀的路人


註冊時間: 2009-04-26
文章: 3

72.82 果凍幣

發表發表於: 2009-4-28, AM 12:51 星期二    文章主題: 引言回覆

babu61509 寫到:
跑到那邊很正常阿 = _="

因為程式是一行一行的往下跑,只要if成立,你的 system("pause"); 又放在 goto menu; 之前所以會先執行到。


謝謝 我懂了 @@[/code]
回頂端
檢視會員個人資料 發送私人訊息
followagpop
稍嫌羞澀的路人


註冊時間: 2009-04-26
文章: 3

72.82 果凍幣

發表發表於: 2009-4-28, AM 12:56 星期二    文章主題: 引言回覆

代碼:
#include <iostream>
#include <time.h>

using namespace std;       
 
int main()
{
   short e=0;
   int a=700, b=500, c=450, d=900, money=1500;

title:
       cout << "歡迎光臨,叮叮勒拜服飾大賣場\n"
            << "本店裡有最新,最流行,最漂亮的衣服\n"
            << "來叮叮勒拜,讓您一次滿載而歸\n"<< endl;
       system("pause");
menu:         
       cout << "\n您的現金總共剩餘:" << money << "\n";       
       cout << "\n下面是特價物品的編號:\n"
       << "1.衣服700\t2.褲子500\t3.鞋子450\t4.外套900\n"
       << "\n請輸入您所想購買的物品編號(1~4):";
       cin >> e;
       if ( e <= 0 || e > 5)   
       goto main;               
       else if  ( e < 2 )
       {
       if ( money < a )
       goto main1; 
       cout << "\n謝謝您的選購\n"
            << "您選購了衣服700\n"<< endl;
       money -= a;
       system("pause");
       system("cls");
       goto menu;
       }
       else if ( e > 1 && e < 3 )
       {
       if ( money < b )
       goto main1;
       cout << "\n謝謝您的選購\n"
            << "您選購了褲子500\n" << endl;
       money -= b;
       system("pause");
       system("cls");
       goto menu;
       }
       else if ( e > 2 && e < 4 )
       {
       if ( money < c )
       goto main1;
       cout << "\n謝謝您的選購\n"
            << "您選購了鞋子450\n" << endl;
       money -= c;
       system("pause");
       system("cls");
       goto menu;
       }
       else if ( e > 3 )
       {
       if ( money < d )
       goto main1;
       cout << "\n謝謝您的選購\n"
            << "您選購了鞋子900\n" << endl;
       money -= d;
       system("pause");
       system("cls");
       goto menu;
       }
main:
       cout << "\n您輸入錯誤哦,叮叮勒敗只限制輸入1~4而已\n "<< endl;
       system("pause");
       system("cls");
       goto menu;
main1:
       cout << "\n對不起,您的資金不足,請重新選購\n "<< endl;
       system("pause");
       system("cls");
       goto menu;
over:
       cout << "GAME OVER";
       system("pause");
       return 0;   
}


第一次寫程式!!!
以上程式都還OK 不過重點來了
我想問一下!!!怎麼判別是否輸入英文字母(數字也要,我要寫筆記)
(((是否可以詳細的解說))) 我初學者
謝謝大大[/code]
回頂端
檢視會員個人資料 發送私人訊息
從之前的文章開始顯示:   
發表新主題   回覆主題    電腦遊戲製作開發設計論壇 首頁 -> 遊戲程式初級班:語法及基礎概念 所有的時間均為 台灣時間 (GMT + 8 小時)
1頁(共1頁)

 
前往:  
無法 在這個版面發表文章
無法 在這個版面回覆文章
無法 在這個版面編輯文章
無法 在這個版面刪除文章
無法 在這個版面進行投票
可以 在這個版面附加檔案
可以 在這個版面下載檔案


Powered by phpBB © 2001, 2005 phpBB Group
正體中文語系由 phpbb-tw 維護製作