C++ 训练题目

news/2025/1/16 5:52:29/

由计算机“想”一个四位数,请人猜这个四位数是多少。人输入四位数字后,计算机首先 判断这四位数字中有几位是猜对了,并且在对的数字中又有几位位置也是对的,将结果显示出来,给人以提示,请人再猜,直到人猜出计算机所想的四位数是多少为止。例如:计算机“想”了一个“1234”请人猜,可能的提示如下:人猜的整数计算机判断有几个数字正确有几个位置正确1122 2 1       3344 2 1         3312 3 0              4123 4 0              1243 4 2               1234 4 4游戏结束请编程实现该游戏。

游戏结束时,显示人猜一个数用了几次。*问题分析与算法设计问题本身清楚明了。判   断相同位置上的数字是否相同不需要特殊的算法。只要截取相同位置上的数字进行比较即可。但在判 断几位数字正确时,则应当注意:计算机所想的是“1123”,而人所猜的是“1576”,则正确的数字只有1位。程序中  截取计算机所想的数的每位数字与人所猜的数字按位比较。若有两位数字相同,则要 记信 所猜中数字的位置,使该位数字只能与一位对应的数字“相同”。当截取下一位数字进行比较时,就不应再与上述位置上的数字进行比较,以避免 所猜的数中的一位与对应数中多位数字“相同”

#include <iostream>
#include <string>
#include <ctime>
#include <cstdlib>using namespace std;int main() {srand(time(0));string targetNumber;int guessCount = 0;// 生成随机的四位数作为目标数字for (int i = 0; i < 4; i++) {char digit = '0' + rand() % 10;targetNumber += digit;}while (true) {string guessNumber;cout << "请猜一个四位数: ";cin >> guessNumber;if (guessNumber.length() != 4) {cout << "请输入一个四位数!" << endl;continue;}int correctDigitsCount = 0;int correctPositionsCount = 0;for (int i = 0; i < 4; i++) {if (guessNumber[i] == targetNumber[i]) {correctPositionsCount++;}if (targetNumber.find(guessNumber[i]) != string::npos) {correctDigitsCount++;}}cout << "你猜的整数计算机判断有几个数字正确有几个位置正确: " << correctDigitsCount << " " << correctPositionsCount << endl;if (correctPositionsCount == 4) {cout << "恭喜你猜对了!" << endl;break;}guessCount++;}cout << "你一共猜了 " << guessCount << " 次。" << endl;return 0;
}


http://www.ppmy.cn/news/745301.html

相关文章

SQL-每日一题【511.游戏玩法分析Ⅰ】

题目 活动表 Activity&#xff1a; 写一条 SQL 查询语句获取每位玩家 第一次登陆平台的日期。 查询结果的格式如下所示&#xff1a; 解题思路 前置知识 MIN&#xff08;&#xff09;函数 MIN 函数返回一列中的最小值。NULL 值不包括在计算中。 SQL MIN() 语法 SELECT MIN(co…

[渝粤教育] 扬州工业职业技术学院 “胖集”陪你环游“一带一路” 参考 资料

教育 -“胖集”陪你环游“一带一路”-章节资料考试资料-扬州工业职业技术学院【】 一带一路背景下集装箱运输的机遇与挑战 1、“一带一路”下的集装箱运输 1、【判断题】丝绸之路的命名是因为丝绸位最具代表性的货物。 A、正确 B、错误 参考资料【 】 2、【判断题】“一带一路”…

学术文献翻译改写 F36(含心得)

第36章 英国的天然气市场 本章介绍英国天然气市场,旨在让读者了解这种大宗交易商品的价格决定因素,这里的天然气是指英国国家平衡点(NBP)市场上实货和金融合约形式的天然气。我们重点关注生产、运输和消费的基本面状况与市场体制安排之间的关系。我们发现,虽然天然气的消费对天…

怎么用显卡计算_砖用量、砂浆用了怎么计算,终于搞明白了!!

给你一个每立方砖墙砖消耗量公式&#xff0c;利用这个公式可以计算各种墙厚的砖消耗量&#xff1a; 砖净用量&#xff1d;1/(墙厚*(砖长灰缝)*(砖厚灰缝))*KK-墙厚的砖数*2&#xff1b;墙厚的砖数指&#xff1a;0.5、1、1.5、2、2.5、3&#xff1b; 240墙一方用多少块砖(灰缝取…

怎么用显卡计算_砖用量、砂浆用了怎么计算,终于搞明白了

给你一个每立方砖墙砖消耗量公式&#xff0c;利用这个公式可以计算各种墙厚的砖消耗量&#xff1a; 砖净用量&#xff1d;1/(墙厚*(砖长灰缝)*(砖厚灰缝))*KK-墙厚的砖数*2&#xff1b;墙厚的砖数指&#xff1a;0.5、1、1.5、2、2.5、3&#xff1b; 240墙一方用多少块砖(灰缝取…

超高住宅之殇:美景难抵“鸡肋命”

“前一段工作情况来看&#xff0c;清理这些短视频的违规信息就有6万多条&#xff0c;关闭违规直播间1174个&#xff0c;关闭违规账号3609个&#xff0c;还是取得了一些成绩。” 5月8日&#xff0c;国家互联网信息办公室网络综合治理局局长张拥军&#xff0c;正在介绍2021年“清…

Unity3d学习日记 (1)为场景内物体添加基本逻辑和脚本代码

1.准备:配置Unity3d环境和用VS2019写C#脚本 首先,配置Unity3d环境推荐使用是UnityHub作为平台,然后在UnityHub里边下载Unity3D版本,笔者这里选用的的是2019.4.16f1c1版本,值得注意的是由于Unity给的人机认证邮件的图片源是google的&#xff0c;因此注册的时候是需要翻墙的&…

CF3B--Lorry翻译

原题链接-- Lorry | JXNUOJNOJ is yet another Online Judge providing you functions like problem solving, discussing, solutions, groups, contests and ranking system.https://acs.jxnu.edu.cn/problem/CF3B Lorry 2000ms 65536K 描述&#xff1a; A group of tour…