c語言實現紙牌計算24點小遊戲
利用系統時間設定隨機種子生成4個隨機數,並對4個數字之間的運算次序以及運算符號進行列舉,從而計算判斷是否能得出24,以達到程式目的。程式主要功能已完成,目前還有部分細節未處理,待完成ing...對於**中的錯誤,懇請批評指正。
遊戲描述:
a-10:分別代表數字 1-10。
j,q,k:均代表數字1。
考慮到部分地方的規則,j,q,k 也可以當成10 ,或者直接代表本身所代表的數字,即11、12、13來運算。
使用加減乘除,能得出24者為贏,存在無解情況。
遊戲開始得分為1000分,每一秒鐘減少1分,當答對一次時,分數增加100分。(暫未實現)
**如下:
1/*2*3* project : 計算24 4*
5* author : 鬼狐_ambrose6*
7* date : 2023年3月25日10:55:47 8*
9* remark :紙牌中的10以0代替,減法得數均為正數
10*/
11 #include 12 #include 13 #include 14
15char getpokercard(int
value)
1621
else
if(value<10)22
25else
if(value==10)26
29else
if(value==11)30
33else
if(value==12)34
37else
if(value==13)38
41}4243
void printanswer(int flag,int *poker,char *oper,char *answer)
4475
76//
儲存answer
7778
79return
; 80}81
82double getvalue(double num1,double num2,char
oper)
83103
104return
result;
105}
106107
int getresult(int *poker,char *oper,char *answer)
108128
129//
2.(a*(b*c))*d
130 t=0
;131 t=getvalue(b,c,oper[1
]);132 t=getvalue(a,t,oper[0
]);133 t=getvalue(t,d,oper[2
]);134
135if(fabs(t-24)<0.0001
)136
140141
//3.(a*b)*(c*d)
142 t=0
;143 t=getvalue(getvalue(a,b,oper[0]),getvalue(c,d,oper[2]),oper[1
]);144
145if(fabs(t-24)<0.0001
)146
150151
152 t=0
;153 t=getvalue(c,d,oper[2
]);154 t=getvalue(b,t,oper[1
]);155 t=getvalue(a,t,oper[0
]);156
157if(fabs(t-24)<0.0001
)158
162163
164 t=0
;165 t=getvalue(b,c,oper[1
]);166 t=getvalue(t,d,oper[2
]);167 t=getvalue(a,t,oper[0
]);168
169if(fabs(t-24)<0.0001
)170
174175
return0;
176}
177178
void printresult(int *poker,char *answer)
179;
181char oper[3
];182
inti,j,k;
183int count=0
;184
185for(i=0;i<4;i++)
186for(j=0;j<4;j++)
187for(k=0;k<4;k++)
188196
if(count)
197200
else
201204
205return
;206
}207
208void printpoker(int *poker)
209215 printf("\n"
);216
217return
;218
}219
220void getrandompokers(int *poker)
221230
231return
;
232}
233234
main()
235262
while(c=='\n'
);263
264return0;
265 }
C語言實現紙牌24點小遊戲
此程式參考c語言實現經典24點紙牌益智遊戲,並做出一些改進。一 題目要求 24點遊戲規則 從撲克中每次取出4張牌。使用加減乘除,第乙個能得出24者為贏。其中,j代表11,q代表12,k代表13,a代表1 按照要求程式設計解決24點遊戲。基本要求 隨機生成4個代表撲克牌牌面的數字字母,程式自動列出所有...
24點小遊戲(c語言)
24點遊戲,輸入四個數字,分別進行加減乘除四則運算結果為 24的輸出成立表示式。include include 本函式用於判斷符號的種類 char operator signaltype int signal i 對兩個數進行算術運算 double operation double a,double...
24點紙牌遊戲
有一種遊戲叫做24點,首先是拿一副牌,每次抽出4張,然後利用 四種運算,每張牌只能用一次,而且像10 3這種有餘數的運算不能算,結果能算出24點嗎?說明 j到k都是算10點,不論花色的 由於無聊,所以在火車上想起了這種遊戲,當我們想不出來時,能不能寫個程式來解決呢?這是當時決定寫這個程式的原因。演算...