红桃四

fireseed 2002-03-18 04:59:16
管理员别删,这是我用来接反馈的贴子,原贴是“二十四点纸牌游戏的原代码,放出来啦!!”
...全文
344 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
springleo 2002-03-20
  • 打赏
  • 举报
回复
对上帖的注解, a b c d可取四数的全排列,op有六种可能
///////// 1: op1 2: op1
///////// / \ / \
//////// a op2 op2 op3
//////// /\ /\ /\
//////// b op3 a b c d
//////// /\
//////// c d
////////
springleo 2002-03-20
  • 打赏
  • 举报
回复
先谢谢你的原码,但没注解有点难懂
以下是今天本人写的一个东东,请各位指点
此程序只针对24点,并不具有可扩展性。
对算法作了-些简化,不知会不会出现例外?

#include <stdio.h>
double Caculate(int op,double n1,double n2)
{
switch (op)
{
case 0:
return n1+n2;
break;
case 1:
return n1-n2;
break;
case 2:
return n2-n1;
break;
case 3:
return n1*n2;
break;
case 4:
if (n2!=0)
return n1/n2;
else
return 0;
break;
case 5:
if(n1!=0)
return n2/n1;
else
return 0;
break;
default:
return 0;
}
}

void main()
{
int nInput[4];
int i;
int a,b,c,d;
int op1,op2,op3;
char strop[]="+-_*/\\";
int num[]={1234,1243,1324,1342,1423,1432,
2143,2134,2341,2314,2413,2431,
3124,3142,3241,3214,3412,3421,
4123,4132,4213,4231,4321,4312};
while(1)
{
for(i=0;i<4;i++)
{
printf("input No%d:",i+1);
scanf("%d",&nInput[i]);
if(nInput[i]>9||nInput[i]<1)
return;
}
for(i=0;i<24;i++)
{
a=(nInput[num[i]/1000-1]);
b=(nInput[(num[i]%1000)/100-1]);
c=(nInput[(num[i]%100)/10-1]);
d=(nInput[(num[i]%10)-1]);
for (op1=0;op1<6;op1++)
for(op2=0;op2<6;op2++)
for(op3=0;op3<6;op3++)
{
double value;
value=Caculate(op1,(double)a,
Caculate(op2,(double)b,
Caculate(op3,(double)c,(double)d)));
if(value-24.0<0.0001&&
value-24.0>-0.0001)
{
printf("%1d%c(%1d%c(%1d%c%1d))\n", a,strop[op1],b,strop[op2],c,strop[op3],d);
goto NEXT;
}
value=Caculate(op1,Caculate(op2,(double)a,(double)),
Caculate(op3,(double)c,(double)d));
if(value-24.0<0.0001&&
value-24.0>-0.0001)
{
printf("(%1d%c%1d)%c(%1d%c%1d))\n",
a,strop[op2],b,strop[op1],c,strop[op3],d);
goto NEXT;

}
}
}
printf("Cannot find any way!\n");
NEXT:
printf("Notice: a_b means b-a, a\\b means b/a\n");

}
}
leoleevi 2002-03-18
  • 打赏
  • 举报
回复
什么红桃四啊?

难道是西安的那种红桃四的打发么?
我们自己做过一个红桃四的,有兴趣可以去
www.vrbrothers.com/cn/works看看
delphihero 2002-03-18
  • 打赏
  • 举报
回复
meng_1226@eyou.com thanks
8080 2002-03-18
  • 打赏
  • 举报
回复
谢谢

wwwarden@yeah.net
seesi 2002-03-18
  • 打赏
  • 举报
回复
没看到什么内容
http://seesi.51.net
involute 2002-03-18
  • 打赏
  • 举报
回复
Where is the code?
fireseed 2002-03-18
  • 打赏
  • 举报
回复
你随意输入四个1-9连续的数字,它会给出算法!!
lmx7707 2002-03-18
  • 打赏
  • 举报
回复
收到了,怎么玩阿?
fireseed 2002-03-18
  • 打赏
  • 举报
回复
请不要在这里索取代码!请看原贴!!!!!!!!!!!!!!!!
xjl1980_81 2002-03-18
  • 打赏
  • 举报
回复
xujianlong1980@163.com
谢谢了

16,551

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Creator Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧