猜一个四位数游戏
2015-11-28 13:51
155 查看
//猜四位数字,先输入计算机想出的数字,再输入人猜到的答案
//输出 人猜到的正确的数字的个数(N),在输出正确的位置(P)
//eg:
//输入:1234
// 1314
//输出:2N1P
#include<iostream>
using namespace std;
int main()
{
int computer, user;
cout << "input computer and user"<<endl;
cin >> computer >> user;
cout << endl;
int com[4];
int use[4];
//对下文这一段把四位数拆开的代码也是醉了,太麻烦了。
//而且变成5位6位数就不能用了。
com[0] = computer / 1000;
computer %= 1000;
use[0] = user /1000;
user %= 1000;
com[1] = computer / 100;
computer %= 100;
use[1] = user / 100;
user %= 100;
com[2] = computer / 10;
computer %= 10;
use[2] = user / 10;
user %= 10;
com[3] = computer;
use[3] = user;
int k = 0;
for (int i = 0;i < 4;i++)
{
int time = 0;//use[c]出现的次数
for (int c = 0;c < 4;c++)
{
if (com[i] == use[c])
{
time++;
if (time < 2)k++;
}
}
}
cout << k << "N";
for (int i = 0;i < 4;i++)
{
if (use[i] == com[i])cout << i+1<< "P";
}
system("pause");
}
//输出 人猜到的正确的数字的个数(N),在输出正确的位置(P)
//eg:
//输入:1234
// 1314
//输出:2N1P
#include<iostream>
using namespace std;
int main()
{
int computer, user;
cout << "input computer and user"<<endl;
cin >> computer >> user;
cout << endl;
int com[4];
int use[4];
//对下文这一段把四位数拆开的代码也是醉了,太麻烦了。
//而且变成5位6位数就不能用了。
com[0] = computer / 1000;
computer %= 1000;
use[0] = user /1000;
user %= 1000;
com[1] = computer / 100;
computer %= 100;
use[1] = user / 100;
user %= 100;
com[2] = computer / 10;
computer %= 10;
use[2] = user / 10;
user %= 10;
com[3] = computer;
use[3] = user;
int k = 0;
for (int i = 0;i < 4;i++)
{
int time = 0;//use[c]出现的次数
for (int c = 0;c < 4;c++)
{
if (com[i] == use[c])
{
time++;
if (time < 2)k++;
}
}
}
cout << k << "N";
for (int i = 0;i < 4;i++)
{
if (use[i] == com[i])cout << i+1<< "P";
}
system("pause");
}
相关文章推荐
- 静态联编和动态联编http://www.cnblogs.com/xiaofengkang/archive/2011/10/21/2220678.html
- 正则表达式总结
- windows 下 cudnn的安装方法
- 导出数据生成Excel(MVC)
- 第九周 项目4-广义表算法库及应用(续)
- RHEL7.0 安装Oracle 11gR2报错解决
- 自定义控件6---自定义属性一
- Struts2类型转换器
- Struts2类型转换器
- CF 115B. Lawnmower
- 应用程序的图形界面开发方法
- 发布WebService时出现错误代码faultCode=OTHER_ERROR的解决办法
- byte数组和流 Seralizable:Android基础 -- Activity之间传递数据(bitmap和map对象)
- “数学口袋精灵”第二个Sprint计划(第四天)
- 1016. Phone Bills (25)
- 部署deployments时报错“Exploded location overlaps an existing deployment”时怎么办?
- Java基础知识总结(我常犯的错误)
- Codeforces-383.B.Volcanoes
- JAVA多线程--信号量(Semaphore)
- vsftp安装与配置