引用 | 編輯
達摩
2005-06-15 23:41 |
樓主
▼ |
||
x0
設計一個簡單的遊戲,以亂數產生1至14之間除了7以外的整數,讓遊戲者猜此數字大或小於7。若遊戲者連續猜中三次,則贈送下列神秘獎品之一:1.遊戲者生日當月的日歷。2.遊戲者所屬星座當日運勢。3.一張有五組號碼的樂透彩券。若遊戲者猜20次仍未連續猜中三次則結束遊戲。需求規格: 設計一個具有下列功能的程式: 一、 猜數字之功能需求: 1.亂數產生的數字每次不同。 2.輸入方式盡可能簡化,如選2表示大於7,1表示小於7,0 表示不玩了。 二、設計神秘獎品之功能需求: 1.獎品種類由遊戲者自選。 2.遊戲者生日當月的日歷:輸入出生年月日,程式計算當月第一日為星期幾,參考如下計算:若year為西元年份,y=year-1,該年的第一天是星期幾之公式為day=(36+y+(y/4)-(y/100)+(y/400))%7+1 day應得到一個1~7的整數,1代表星期日,2代表星期一。 由該年的第一天是星期幾推算當月第一日為星期幾時,應注意閏年的問題(閏年的二月為29天)。所謂的閏年是(1)年份為百年且為400的倍數者(2)其餘為4的倍數之年份。 3.遊戲者 .. 訪客只能看到部份內容,免費 加入會員 x0
|
引用 | 編輯
達摩
2005-06-17 23:02 |
2樓
▲ ▼ |
#include <iostream>
#include<stdio.h> #include <stdlib.h> #include <cstdlib> #include<time.h> using namespace std; int main(){ srand(time(NULL)); int a[42]; for(int i=0;i<42;i++){ a=i+1; } int c=42; cout<<"==========樂透彩================\n\n"; cout<<" 彩卷號碼\n\n"; for(int j=1;j<=6;j++){ int b=rand()%c; int e=a; cout<<" "<<e<<" "; c--; for(int i=b;i<c;i++){ a=a[i+1]; } } cout<<endl<<endl; cout<<"================================\n"; system("pause"); return 0; } 大大這是我新想出來的程式~星座當日運勢和生日當月的日歷想不出來了~有沒有大大可以幫忙一下的呢~感恩唷~ x0 |
引用 | 編輯
andyz
2005-06-18 01:25 |
3樓
▲ |
複製程式
#include <iostream> #include <cstdlib> #include<time.h> using namespace std; void calendar() { int year,month,day,y,d; cout<<"輸入出生年月日(西元)"<<endl; cin>>year>>month>>day; y=year-1; d=(36+y+(y/4)-(y/100)+(y/400))%7+1; //calendar design by yourself }; void fortune() { //write by yourself }; void lottery() { srand(time(0)); int num[5]={0}; for(int i=0;i<5;i++) num[i]=rand()%42+1; for(i=0;i<5;i++){ for(int j=0;j<5;j++){ if(i==j){continue ;} while(num[i]==num[j]) {num[j]=rand()%42+1;} }} for(i=0;i<5;i++) cout<<num[i]<<endl; }; int main() { srand(time(NULL)); int answer,guess,continuee=0,times=0,present; cout<<" 輸入Ƈ'代表猜小 , 輸入ƈ'代表猜大 , 如果想離開遊戲輸入Ɔ' "<<endl; for(times;times<20;times++){ do{ answer=rand()%14+1; }while(answer==7); do{ cout<<"請輸入> "; cin>>guess; if(guess!=2&&guess!=1&&guess!=0){ cout<<"錯誤輸入"<<endl<<"從新輸入一次"<<endl;} }while(guess!=2&&guess!=1&&guess!=0); if(guess==0) break; cout<<"答案就是"<<answer<<endl; switch (guess) { case 1: if(answer<7) {cout<<"答對的"<<endl; continuee++;} else {cout<<"猜錯了"<<endl; continuee=0;} break; case 2: if(answer>7) {cout<<"答對的"<<endl; continuee++;} else {cout<<"猜錯了"<<endl; continuee=0;} break; } if(continuee==3){ cout<<"恭喜!!連續答對三次 選擇獎項"<<endl <<"1.您的生日當月的日歷。"<<endl <<"2.您的星座當日運勢。"<<endl <<"3.樂透彩券"<<endl; do{ cout<<"請選擇> "; cin>>present; if(present>3||present<1){ cout<<"錯誤輸入"<<endl<<"從新輸入一次"<<endl;} }while(present>3||present<1); switch (present) { case 1: calendar(); break; case 2: fortune(); break; case 3: lottery(); break; } break;} } system("pause"); return 0; } 其他的自行設計 x1 |