当前位置: 首页 > news >正文

6、while循环 - 习题解析

目录

  • 解析部分:
    • 分支练习
      • 1244. 请问一个正整数能够整除几次2
        • 问题描述
        • 解题思路
        • 代码实现
        • 代码解析
      • 1062. 求落地次数
        • 问题描述
        • 解题思路
        • 代码实现
        • 代码解析
      • 1254. 求车速
        • 问题描述
        • 解题思路
        • 代码实现
        • 代码解析
      • 1261. 韩信点兵
        • 问题描述
        • 解题思路
        • 代码实现
        • 代码解析

解析部分:

分支练习

1244. 请问一个正整数能够整除几次2

问题描述

请问一个正整数 𝑛n 能够整除几次 2?
比如: 4 可以整除 2 次 2 ,100 可以整除 50次 2 , 9 可以整除 0 次 2 。

解题思路
  1. 读入数据: 从标准输入读取一个正整数 𝑛n
  2. 计算整除次数:
    • 初始化计数器 count 为 0。
    • 当 𝑛n 为偶数时,重复以下步骤:
      • 计数器 count 加 1。
      • 𝑛n 除以 2,更新 𝑛n 的值。
  3. 输出结果: 输出计数器 count 的值,表示 𝑛n 能够被 2 整除的次数。
代码实现
#include <iostream>
using namespace std;
int main() {int n; // 定义一个整型变量来存储输入的数cin >> n; // 通过标准输入读取这个数int count = 0; // 初始化计数器为0while (n % 2 == 0) { // 当n为偶数时,重复以下步骤count++; // 计数器加1n /= 2; // n除以2,更新n的值}cout << count << endl; // 输出计数器的值,表示n能够被2整除的次数return 0; // 程序结束
}
代码解析
  • 使用cin从标准输入读取一个整数n
  • 初始化计数器count为0。
  • 使用while循环,当n为偶数时(n % 2 == 0),重复以下步骤:
    • 计数器count加1。
    • n除以2,更新n的值。
  • 使用cout输出计数器count的值,表示n能够被2整除的次数。

问题描述中的例子也进行了修正:

  • 4 可以整除 2 次 2
  • 100 可以整除 2 次 2
  • 9 可以整除 0 次 2

1062. 求落地次数

问题描述

小球从 100 米高处自由落下,着地后又弹回高度的一半再落下。
经过多少次落地后,小球弹起的高度才会低于 0.5 米?

解题思路
  1. 初始化高度: 将初始高度 height 设为 100。
  2. 计算落地次数:
    • 初始化计数器 count 为 0。
    • 当高度 height 大于等于 0.5 时,重复以下步骤:
      • 计数器 count 加 1。
      • 高度 height 除以 2,更新高度的值。
  3. 输出结果: 输出计数器 count 的值,表示小球落地的次数。
代码实现
#include <iostream>
using namespace std;
int main() {double height = 100; // 初始化高度为100int count = 0; // 初始化计数器为0while (height >= 0.5) { // 当高度大于等于0.5时,重复以下步骤count++; // 计数器加1height /= 2; // 高度除以2,更新高度的值}cout << count << endl; // 输出计数器的值,表示小球落地的次数return 0; // 程序结束
}
代码解析
  • 初始化高度height为100。
  • 初始化计数器count为0。
  • 使用while循环,当高度height大于等于0.5时,重复以下步骤:
    • 计数器count加1。
    • 高度height除以2,更新高度的值。
  • 使用cout输出计数器count的值,表示小球落地的次数。

1254. 求车速

问题描述

一辆以固定速度行驶的汽车,司机在上午 10 点看到里程表上的读数是一个对称数(即这个数从左向右读和从右向左读是完全一样的),为 95859 。
两小时后里程表上出现了一个新的对称数。
问该车的速度是多少?新的对称数是多少?
输入
无。
输出
输出两行,第一行是车速,第二行是新的里程数(两个都是整数)。

解题思路
  1. 确定初始里程: 根据题目描述,初始里程为 95859。
  2. 寻找下一个对称数:
    • 从初始里程开始,依次递增里程数。
    • 对于每个里程数,判断它是否为对称数:
      • 取出里程数的万位、千位、十位、个位。
      • 判断万位与个位是否相等,千位与十位是否相等。
    • 当找到下一个对称数时,停止寻找。
  3. 计算车速:
    • 下一个对称数与初始里程的差值即为两小时内行驶的里程。
    • 将里程差除以 2,得到车速(单位为千米/小时)。
  4. 输出结果: 输出两行,第一行为车速,第二行为新的对称数里程。
代码实现
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{   int n = 95859; // 初始里程int n2 = 95859; // 保存初始里程的副本while(true) // 无限循环,直到找到下一个对称数{n++; // 里程数加1int g = n%10; // 取个位int s = n/10%10; // 取十位int q = n/1000%10; // 取千位int w = n/10000%10; // 取万位if(w==g && q==s) // 如果万位与个位相等,千位与十位相等,则为对称数{break; // 跳出循环}}cout<<(n-n2)/2<<endl; // 输出车速cout<<n<<endl; // 输出新的对称数里程return 0;
}
代码解析
  • 初始化初始里程n为95859,并复制一份到n2
  • 使用无限循环while(true),直到找到下一个对称数为止。
  • 里程数n加1,继续寻找。
  • 取出里程数的个位g、十位s、千位q、万位w
  • 判断万位w与个位g是否相等,千位q与十位s是否相等,如果都相等,则为对称数,跳出循环。
  • 计算车速,为(n-n2)/2,即新里程与初始里程的差值除以2。
  • 输出车速和新的对称数里程n

1261. 韩信点兵

问题描述

韩信有一队士兵,他想知道有多少人,他就让士兵报数,如果按照 1 到 5 报数,最末一个士兵报的数为 1 。
按照 1到 6 报数,最末一个士兵报的数为 5 。
按照 1 到 7 报数,最末一个士兵报的数为 4 。
最后再按 1 到11 报数,最末一个士兵报的数为 10 。
请问韩信这队士兵最少有多少人?

解题思路

我们可以从1开始依次递增,对每个数分别模5、6、7、11,判断是否满足题目要求的条件。

  1. 初始化变量num为1,表示当前检查的数。
  2. 使用while循环,条件为true,即无限循环。
  3. 在循环内,判断num是否满足以下条件:
    • num模5的余数为1。
    • num模6的余数为5。
    • num模7的余数为4。
    • num模11的余数为10。
  4. 如果num满足所有条件,跳出循环。
  5. 如果num不满足条件,将num加1,继续下一轮循环。
  6. 输出满足条件的num值。
代码实现
#include <iostream>
using namespace std;
int main() {int num = 1; // 初始化num为1while (true) { // 无限循环if (num % 5 == 1 && num % 6 == 5 && num % 7 == 4 && num % 11 == 10) {break; // 如果num满足所有条件,跳出循环}num++; // 如果num不满足条件,num加1,继续下一轮循环}cout << num << endl; // 输出满足条件的num值return 0;
}
代码解析
  • 初始化变量num为1,表示当前检查的数。
  • 使用while循环,条件为true,即无限循环。
  • 在循环内,判断num是否满足以下条件:
    • num % 5 == 1: num模5的余数为1。
    • num % 6 == 5: num模6的余数为5。
    • num % 7 == 4: num模7的余数为4。
    • num % 11 == 10: num模11的余数为10。
  • 如果num满足所有条件,使用break语句跳出循环。
  • 如果num不满足条件,将num加1,继续下一轮循环。
  • 输出满足条件的num值。

相关文章:

6、while循环 - 习题解析

目录 解析部分&#xff1a;分支练习1244. 请问一个正整数能够整除几次2问题描述解题思路代码实现代码解析 1062. 求落地次数问题描述解题思路代码实现代码解析 1254. 求车速问题描述解题思路代码实现代码解析 1261. 韩信点兵问题描述解题思路代码实现代码解析 解析部分&#xf…...

ReentrantLock可重入锁

可重⼊锁&#xff0c;这个锁可以被线程多次重复进⼊进⾏获取操作。 ReentantLock继承接⼝Lock并实现了接⼝中定义的⽅法&#xff0c;除了能完成synchronized所能完成的所有⼯作 外&#xff0c;还提供了诸如可响应中断锁、可轮询锁请求、定时锁等避免多线程死锁的⽅法。 在并发量…...

如何秒杀系统架构设计

原文路径:https://learn.lianglianglee.com/%e4%b8%93%e6%a0%8f/%e5%a6%82%e4%bd%95%e8%ae%be%e8%ae%a1%e4%b8%80%e4%b8%aa%e7%a7%92%e6%9d%80%e7%b3%bb%e7%bb%9f/00%20%e5%bc%80%e7%af%87%e8%af%8d%20%e7%a7%92%e6%9d%80%e7%b3%bb%e7%bb%9f%e6%9e%b6%e6%9e%84%e8%ae%be%e8%ae%…...

深度神经网络——什么是降维?

引言 什么是降维&#xff1f; 降维是用于降低数据集维度的过程&#xff0c;采用许多特征并将它们表示为更少的特征。 例如&#xff0c;降维可用于将二十个特征的数据集减少到仅有几个特征。 降维通常用于无监督学习任务 降维是一个用于降低数据集维度的过程&#xff0c;采用许…...

SpringMVC—RequestMapping注解

一、RequestMapping注解 RequestMapping注解&#xff1a;是Spring MVC框架中的一个控制器映射注解&#xff0c;用于将请求映射到相应的处理方法上&#xff0c;具体来说&#xff0c;他可以将指定URL的请求绑定到一个特定的方法或类上&#xff0c;从而实现对请求的处理和响应。 …...

Java线程池基本概念

全局和局部线程池 全局线程池 在Spring框架中&#xff0c;全局线程池如ThreadPoolTaskExecutor通常是作为Spring Bean存在的&#xff0c;它们的生命周期由Spring容器管理。当Spring容器关闭时&#xff0c;这些线程池也会被适当地清理和关闭。因此&#xff0c;开发者通常不需要手…...

智能车联网安全发展形势、挑战

一、技术演进加速车联网安全环境复杂变化 当前&#xff0c;5G、大数据、大算力、大模型等技术正加速在车联网领域实现融合应用。车联网的网络通信能力、感知计算水平以及创新业务应用都在快速发展&#xff0c;与此同时&#xff0c;车联网的网络安全环境也在随之演进变化&#…...

AWS概述

AWS概述EMR Serverless Aamzon Web Services提供了一系列全球范围的云产品&#xff0c;包括计算、存储、数据库、分析、网络、移动、开发工具、管理工具、IoT、安全和企业应用&#xff1a;按需交付、及时可用、采用随用随付的定价模式。你可以畅享200多种服务&#xff0c;从数据…...

MySQL常见面试题自测

文章目录 MySQL基础架构一、说说 MySQL 的架构&#xff1f;二、一条 SQL语句在MySQL中的执行过程 MySQL存储引擎一、MySQL 提供了哪些存储引擎&#xff1f;二、MySQL 存储引擎架构了解吗&#xff1f;三、MyISAM 和 InnoDB 的区别&#xff1f; MySQL 事务一、何谓事务&#xff1…...

c语言回顾-函数递归

1.递归的介绍 1.1什么是递归 递归是指在一个函数的定义中调用自身的过程。简单来说&#xff0c;递归是一种通过重复调用自身来解决问题的方法。 递归包括两个关键要素&#xff1a;基本情况和递归情况。基本情况是指当问题达到某个特定条件时&#xff0c;不再需要递归调用&am…...

消息队列-RabbitMQ-延时队列实现

死信队列 DLX,全称为Dead-Letter-Exchange,死信交换机&#xff0c;死信邮箱。当消息在一个队列中变成死信之后&#xff0c;它能重新发送到另外一个交换器中&#xff0c;这个交换器就是DLX&#xff0c;绑定DLX的队列就称为死信队列。 导致死信的几种原因&#xff1a; ● 消息…...

【热门开源项目推荐】满足不同程序员的需求与关注点

目录 前言一、热门开源项目介绍二、使用开源热门项目的优势&#xff08;一&#xff09;经济方面&#xff08;二&#xff09;技术方面&#xff08;三&#xff09;社区支持及协作方面 三、程序员选择项目模型建议&#xff08;一&#xff09;关键步骤&#xff08;二&#xff09;示…...

一文理清GO语言日志库实现开发项目中的日志功能(rotatelogs/zap分析)

一文理清GO语言日志库实现开发项目中的日志功能&#xff08;rotatelogs/zap分析&#xff09; rotatelogs rotatelogs 是一个用于管理日志文件的 Go 语言库&#xff0c;它提供了自动轮换、压缩和删除旧日志文件的功能。这个库可以帮助你更好地管理和维护你的应用程序日志。要使…...

【Go语言精进之路】构建高效Go程序:了解string实现原理并高效使用

&#x1f525; 个人主页&#xff1a;空白诗 &#x1f525; 热门专栏&#xff1a;【Go语言精进之路】 文章目录 引言一、Go语言的字符串类型1.1 字符串的定义1.2 字符串的零值可用1.3 字符串的不可变性1.4 字符串的拼接1.5 字符串的常用方法1.6 实际使用示例 二、字符串的内部表…...

HDFS 常见命令

在HDFS创建文件夹&#xff1a;hdfs dfs -mkdir /test 复制本地文件到HDFS中某个目录下&#xff1a;hdfs dfs -put /本地路径 /hdfs 路径 查看文件内容&#xff1a;hdfs dfs -cat /test.txt 查看当前文件夹目录&#xff1a;hdfs dfs -ls / 查看文件夹中的文件数&#xff1a;…...

示例:WPF中应用Grid的SharedSizeGroup设置整齐的布局

一、目的&#xff1a;应用Grid的SharedSizeGroup设置整齐的布局 二、实现 <ItemsControl ItemsSource"{local:GetStudents Count5}"><ItemsControl.ItemTemplate><DataTemplate><Grid ShowGridLines"True"><Grid.ColumnDefinit…...

React的form表单自定义校验规则

使用antd开发的过程中&#xff0c;必定会遇到需要对form表单进行必填校验的处理&#xff0c;正常情况下&#xff0c;我们都会一个空的必填校验&#xff0c;如下&#xff1a;一般我们只需要简单配置rules即可 <FormItem label"管理员姓名" {...itemLayout.wholeLi…...

一种新的一维时间序列信号盲解卷积算法(以旋转机械故障诊断为例,MATLAB环境)

一种新的一维时间序列信号盲解卷积算法&#xff08;以旋转机械故障诊断为例&#xff0c;MATLAB环境&#xff09;&#xff0c;可作为深度学习信号前处理过程&#xff0c;水个SCI不是问题。 机械设备的状态信号中往往蕴含着大量的设备异常信息。如何从繁多的机械状态信号中提取足…...

618电商是社区网站入局的好时机吗?

近日&#xff0c;随着618大促的临近&#xff0c;许多内容平台像B站、小红书等纷纷被电商活动所充斥&#xff0c;让用户感觉仿佛被电商绑架一般。这种用户体验的极度不佳让人开始思考&#xff0c;难道这就是互联网社区的未来发展方向吗&#xff1f; 在所有平台性质的社区中&…...

不知道密码,一样能卸载瑞星esm防病毒终端安全防护系统

离开单位后试图卸载瑞星的时候却发现还需要密码&#xff0c;真是烦死了。研究了几分钟后找到了完美卸载方法。 首先&#xff0c;让我们请出老流氓360安全卫士&#xff0c;下载好它&#xff0c;让右键菜单出现使用 360强力删除这一选项。 之后&#xff0c;进入安全模式&#x…...

Chromium 开发指南2024 Mac篇-安装和配置depot_tools工具(三)

1.引言 在前两篇指南中&#xff0c;我们详细介绍了在 macOS 环境下编译 Chromium 所需的硬件要求和系统依赖&#xff0c;并具体讲解了如何正确安装和配置 Xcode。通过这些步骤&#xff0c;您已经为编译 Chromium 打下了坚实的基础。然而&#xff0c;编译 Chromium 还需要配置一…...

微信小程序-路由和页面跳转API

一.wx.navigateTo wx.navigateTo是通过编程实现页面跳转&#xff0c;和navigator组件组件中&#xff0c;open-type"navigate"属性类似&#xff0c;是保留当前页面跳转新的页面&#xff0c;不适用tabbar页面。 //保留当前页面&#xff0c;跳转到非tabbar页面wx.navig…...

PWR电源控制

一、PWR简介 1、PWR&#xff08;Power Control&#xff09;电源控制 &#xff08;1&#xff09;PWR负责管理STM32内部的电源供电部分&#xff0c;可以实现可编程电压监测器和低功耗模式的功能 &#xff08;2&#xff09;可编程电压监测器&#xff08;PVD&#xff09;可以监控…...

【记录46】【案例】echarts 柱状图

echarts环境4.1.0 <template><div id"threefour"></div> </template> <script> import * as echarts from "echarts" export default {name:"",components:{},data(){return {}},methods:{getdata(){var myChart…...

Github2024-06-12 开源项目日报 Top10

根据Github Trendings的统计,今日(2024-06-12统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Python项目4JavaScript项目2Lua项目1PHP项目1Blade项目1非开发语言项目1TypeScript项目1Shell项目1从零开始构建你喜爱的技术 创建周期:2156 天…...

茶艺师服务师傅小程序APP源码(APP+小程序+公众号+H5)

&#x1f375;茶艺师服务小程序&#xff1a;品味生活的茶艺新体验&#x1f331; &#x1f33f;一、引言&#xff1a;茶艺师服务小程序&#xff0c;让生活更有味 在繁忙的生活中&#xff0c;品一杯香茗&#xff0c;感受茶文化的韵味&#xff0c;是许多人向往的休闲方式。然而&…...

【正则表达式】入门

参考视频&#xff1a;10分钟快速掌握正则表达式_哔哩哔哩_bilibili 这个网站用来测试写的正则表达式效果&#xff1a;regex101: build, test, and debug regex 示例&#xff1a; 限定符 ? 表示前一个字符可有可无 比如这里输入&#xff1a;de? 匹配结果可以得到d和de * 前…...

制造业为什么需要ERP企业管理软件?

如今&#xff0c;传统的制造业管理方式逐渐变得力不从心~库存积压、生产效率低下、供应链混乱…想象一下&#xff0c;如果你的企业仍然依赖于手工记录订单、库存和财务数据&#xff0c;那么每当市场发生变动时&#xff0c;你就需要花费大量的时间和精力去重新调整生产计划、更新…...

JavaScript Prototype

JavaScript Prototype JavaScript 是一种高级的、解释执行的编程语言&#xff0c;广泛应用于网页和服务器端开发。JavaScript 的核心特性之一是其原型继承机制&#xff0c;这是理解 JavaScript 对象模型的关键。 什么是 Prototype&#xff1f; 在 JavaScript 中&#xff0c;…...

Web Works API 和 Promise 的对比和区别

Web Workers 和 Promise 都是强大的工具&#xff0c;用于不同的异步处理场景。Web Workers 适用于需要并行处理的复杂任务&#xff0c;通过后台线程避免阻塞主线程。而 Promise 则简化了单线程中的异步操作管理&#xff0c;使代码更加清晰和结构化。根据具体需求选择合适的技术…...

网站建设开什么名目/宁波网站推广优化哪家正规

PHP中fopen,file_get_contents,curl函数的区别 1.fopen/file_get_contents每次请求都做DNS查询&#xff0c;并不对DNS的信息进行缓存&#xff0c;而curl会对DNS的信息进行缓存&#xff0c;对统一域名下的网页或者图片的请求只需要一次DNS查询&#xff0c;这样大大减少了DNS的查…...

企业做网站的费用/推广平台网站

源&#xff1a;JNA调用DLL 介绍 给大家介绍一个最新的访问本机代码的Java框架—JNA。 JNA(Java Native Access)框架是一个开源的Java框架&#xff0c;是SUN公司主导开发的&#xff0c;建立在经典的JNI的基础之上的一个框架。 JNA项目地址&#xff1a;https://jna.dev.java.net/…...

广西电网公司电网建设分公司/百度seo通科

文章目录题目介绍题解1&#xff1a;追一先比较再打印题解2&#xff1a;先统一替换再打印题目介绍 原题链接&#xff1a;HJ23 删除字符串中出现次数最少的字符描述 实现删除字符串中出现次数最少的字符&#xff0c;若出现次数最少的字符有多个&#xff0c;则把出现次数最少的字…...

济南城乡建设委员会网/汕头seo网站推广

HDC设备上下文是一种包含有关某个设备&#xff08;如显示器或打印机&#xff09;的绘制属性信息的 Windows 数据结构。所有绘制调用都通过设备上下文对象进行&#xff0c;这些对象封装了用于绘制线条、形状和文本的 Windows API。外文名HDC属 于MFC中的设备上下文句柄封 …...

骏域建网站/官方网站百度一下

2019独角兽企业重金招聘Python工程师标准>>> 说道La(n)mp开发&#xff0c;其实我个人觉得应该把这个单词倒过来&#xff0c;可能才更能表现出这套技术栈的主次和先后顺序&#xff1a;pmalphpmysqlapache\nginxlinux。 PHP 手册要仔细读 &#xff08;高&#xff09; …...

临沂做网站选盛誉/网站优化建设

曾经有人说过&#xff0c;世界上有两种编辑器&#xff0c;好用和不好用的&#xff1b;而在好用的编辑器中&#xff0c;又分两种&#xff0c;免费的和死贵死贵的。譬如说 VIM 和 TextMate&#xff0c;就是免费和死贵的典型。很不幸&#xff0c;今天的主角 Sublime Text 2 也是个…...