C++信息学奥赛1171:大整数的因子

在这里插入图片描述
该程序是一个寻找能够整除输入数字的最小正整数的程序。下面是代码的逻辑解析:

#include <iostream>
#include <string>
#include <cstring>using namespace std;int main() {string n;  // 定义一个字符串变量nint fale = 0;  // 用于标记是否能找到能够整除输入数字的最小正整数,默认为0cin >> n;  // 输入一个字符串nint arr[35];  // 定义一个大小为35的整型数组arrmemset(arr, -1, sizeof(arr));  // 将数组arr的元素初始化为-1for (int i = 0; i < n.length(); i++) {arr[i] = n[i] - '0';  // 将字符串n中的数字转换为整型存入数组arr中}int j = 0;for (int i = 2; i <= 9; i++) {  // 循环i从2到9,尝试将输入数字n能否被2至9之间的数整除int sum = 0;for (int k = 0; k < n.length(); k++) {sum = (sum * 10 + arr[k]) % i;  // 计算输入数字n除以i的余数}if (sum == 0) {cout << i << " ";  // 如果余数为0,则输出ifale = 1;  // 标记找到了能够整除输入数字n的最小正整数}}if (fale == 0) {cout << "none";  // 如果没有找到能够整除输入数字n的最小正整数,则输出"none"}return 0;
}

该程序的逻辑是:

  1. 首先,从标准输入读取一个字符串n。
  2. 创建一个大小为35的整型数组arr,并用-1进行初始化。
  3. 将字符串n中的每个字符转换为整数存入数组arr中。
  4. 使用变量j来追踪数组arr的索引。
  5. 使用循环结构,从2到9依次尝试将输入数字n能否被这些数整除:
    • 创建一个变量sum并初始化为0,用于计算输入数字n除以当前的数i的余数。
    • 使用循环结构,遍历数组arr中的每个元素,计算sum的值。
    • 如果sum等于0,说明输入数字n能够被当前数i整除,将i输出。
  6. 如果找到了能够整除输入数字n的最小正整数,则将fale设置为1。
  7. 如果fale为0,说明没有找到能够整除输入数字n的最小正整数,则输出"none"。
  8. 程序结束。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/132295.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++学习笔记二(堆栈、指针、命名空间、编译步骤)

C 1、堆和栈2、指针2.1、指针的本质2.2、指针的意义2.3、清空指针2.4、常量指针和指针常量2.4.1、常量指针&#xff08;const int *p;&#xff09;2.4.2、指针常量&#xff08;int *const p;&#xff09; 2.5、C类中的this 3、malloc and new4、命名空间4.1、创建命名空间4.2、…

使用nvm管理node.js

使用nvm管理node.js 一、简介 nvm是一个node的版本管理工具。可以在多种系统上管理Node.js 版本的工具。使用 NVM&#xff0c;可以轻松地切换不同版本的Node.js&#xff0c;并方便地管理不同版本的全局包和本地包。 二、安装与下载 1.删除原有node.js 首先需要卸载已安装的…

[BJDCTF2020]ZJCTF,不过如此 preg_replace /e模式漏洞

目录 preg_replace的/e模式 为什么要变为 {${phpinfo()}} 另一个方法 版本 <?phperror_reporting(0); $text $_GET["text"]; $file $_GET["file"]; if(isset($text)&&(file_get_contents($text,r)"I have a dream")){echo &qu…

PlantUML——类图(持续更新)

前言 在分析代码流程中&#xff0c;我们常常会使用到各种UML图&#xff0c;例如用例图、时序图和类图等&#xff0c;以往使用ProcessOn或亿图图示等工具&#xff0c;但是这些工具难以规范化&#xff0c;有没有一种用代码来生成图形的工具呢&#xff1f; 刚好在出差的晨会中机缘…

SpringBoot入门

1.SpringBoot简介 1.1SpringBoot是什么&#xff1f; Spring Boot是基于Spring开发的全新框架&#xff0c;相当于对Spring做了又一层封装。 其设计目的是用来简化Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置&#xff0c;从而使开发人员不再需要定义样…

IO多路复用(select模型实现监控两个设备:自定义设备和鼠标设备)

1、驱动程序 #include <linux/init.h> #include <linux/module.h> #include <linux/cdev.h> #include <linux/fs.h> #include <linux/io.h> #include <linux/slab.h> #include <linux/wait.h> #include <linux/uaccess.h> #i…

4核8G服务器腾讯云CVM S5性能如何?CPU型号及租用价格

腾讯云4核8G服务器CVM标准型S5实例性能测评&#xff0c;包括CPU型号、内存、系统盘、CVM实例规格性能测评&#xff0c;腾讯云4核8G租用优惠价格表&#xff0c;腾讯云服务器网分享腾讯云4核8G服务器CVM S5性能测评和租用费用&#xff1a; 目录 腾讯云4核8G服务器CVM S5性能测评…

Apinto 网关: Go语言实现 HTTP 转 gRPC

gRPC 是由 Google 开发的一个高性能、通用的开源RPC框架&#xff0c;主要面向移动应用开发且基于 HTTP/2 协议标准而设计&#xff0c;同时支持大多数流行的编程语言。 gRPC 基于 HTTP/2 协议传输&#xff0c; HTTP/2 相比 HTTP1.x有以下优势: 采用二进制格式传输协议&#xff…

《C++ Primer》第3章 字符串、向量和数组(三)

参考资料&#xff1a; 《C Primer》第5版《C Primer 习题集》第5版 3.5 数组&#xff08;P101&#xff09; 数组类似于 vector &#xff0c;不同点在于数组的大小固定不变&#xff0c;在某些情况下性能较好&#xff0c;但灵活性较差。 3.5.1 定义和初始化内置数组&#xff…

SpringBoot项目中使用poi-tl打成jar包后常见问题及解决

目录 前言 一、场景描述 1、打成jar包运行后模板找不到 2、文件只能下载一次 二、正确示范 1、Controller下载方法定义 2、文档生成 总结 前言 在前面的博客中&#xff0c;介绍了如何在Java中根据模板动态写入数据到word模板中&#xff0c;原文地址&#xff1a;Java使用…

Pandas数据分析一览-短期内快速学会数据分析指南(文末送书)

前言 三年耕耘大厂数据分析师&#xff0c;有些工具是必须要掌握的&#xff0c;尤其是Python中的数据分析三剑客&#xff1a;Pandas&#xff0c;Numpy和Matplotlib。就以个人经验而已&#xff0c;Pandas是必须要掌握的&#xff0c;它提供了易于使用的数据结构和数据操作工具&am…

第69步 时间序列建模实战:ARIMA建模(R)

基于WIN10的64位系统演示 一、写在前面 这一期&#xff0c;我们使用R进行SARIMA模型的构建。 同样&#xff0c;这里使用这个数据&#xff1a; 《PLoS One》2015年一篇题目为《Comparison of Two Hybrid Models for Forecasting the Incidence of Hemorrhagic Fever with Re…

uniapp小程序 - 隐私协议保护指引接入教程

文章目录 前提&#xff1a;__usePrivacyCheck__: true步骤一、封装弹窗组件步骤二、单个页面引用一、被动监听二、主动查询 前言&#xff1a;官方发布公告&#xff0c;自2023年9月15日起&#xff0c;对于涉及处理用户个人信息的小程序开发者&#xff0c;仅当开发者主动向平台同…

idea VCS配置多个远程仓库

Idea VCS配置多个远程仓库 首先要有两个或多个不同远程仓库地址 idea 添加数据源 查看推送记录 添加数据源 ok之后填写账号密码 推送本地项目 选择不同远程地址 push 查看不同远程地址的 不同分支的 推送记录 不期而遇的温柔&#xff1a; 应用开源架构进行项目开发&#xff0…

【新版】系统架构设计师 - 软件架构设计<新版>

个人总结&#xff0c;仅供参考&#xff0c;欢迎加好友一起讨论 文章目录 架构 - 软件架构设计&#xff1c;新版&#xff1e;考点摘要概念架构的 4 1 视图架构描述语言ADL基于架构的软件开发方法ABSDABSD的开发模型ABSDMABSD&#xff08;ABSDM模型&#xff09;的开发过程 软件架…

k8s node环境部署(三)

1、添加node1、node2环境 前面配置master环境的截图最后一段 复制下来 分别在node主机执行 kubeadm join 192.168.37.132:6443 --token p5omh3.cqjqt8ymrwkdn2fc \ --discovery-token-ca-cert-hash sha256:608a1cbadd060cfdeac2fae84c19609061b750ab51bf9a19887ff7ea…

C# 辗转相除法求最大公约数

辗转相除法求最大公约数 public static void CalcGCD(int largeNumber, int smallNumber, out int GCD){GCD 1;int remain -1;while (remain ! 0){remain largeNumber % smallNumber;GCD smallNumber;largeNumber smallNumber;smallNumber remain;}}

从零基础到精通Flutter开发:一步步打造跨平台应用

&#x1f482; 个人网站:【工具大全】【游戏大全】【神级源码资源网】&#x1f91f; 前端学习课程&#xff1a;&#x1f449;【28个案例趣学前端】【400个JS面试题】&#x1f485; 寻找学习交流、摸鱼划水的小伙伴&#xff0c;请点击【摸鱼学习交流群】 导言 Flutter是一种流行…

Java开发之框架(spring、springmvc、springboot、mybatis)【面试篇 完结版】

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、框架知识分布二、Spring1. spring-单例bean① 问题引入② 单例bean是线程安全的吗③ 问题总结④ 实战面试 2. spring-AOP① 问题引入② AOP记录操作日志③ …

基于SSM+Vue的中国咖啡文化宣传网站

末尾获取源码 开发语言&#xff1a;Java Java开发工具&#xff1a;JDK1.8 后端框架&#xff1a;SSM 前端&#xff1a;采用vUE技术开发 数据库&#xff1a;MySQL5.7和Navicat管理工具结合 服务器&#xff1a;Tomcat8.5 开发软件&#xff1a;IDEA / Eclipse 是否Maven项目&#x…