【小白必懂】C语言求完全数

注意:学生党如果存在付费问题可以加我好友,我可以开单篇短时间的免费哟~ 私聊我就好~

情景再现

👸小媛:小C,你知道什么是完全数吗?

🐰小C:知道呀,难道是今天老师又出题你又不懂了嘛。

👸小媛:哈哈哈,是的,我现在脑子懵懵的,我的自信心完全受到了打击。

🐰小C:没事的,都是小问题。

👸小媛:其实我是发现老师出的题目都是数学有关,我数学又不好,头都大了,很多知识我都不懂是怎么回事。

🐰小C:慢慢补呗,都是小东西,不难的。

👸小媛:那你赶紧跟我说吧,我要学习。

🐰小C:哈哈哈,行嘞。我们在写求完全数时必须要知道什么是完全数,这个你会吧?

👸小媛:就是不会,所以我就第一步就卡死了。

🐰小C:哈哈哈,那我就跟你解释一下什么是完全数吧。

👸小媛:嗯,悉听教导。

🐰小C:完全数就是这个数的因子等于这个数本身,就是完全数。

👸小媛:???什么是因子,老师也是这样说的,我又不敢问,所以就听不懂。

🐰小C:因子就是可以整除这个数的数,例如一个数 6,可以整除 6 的有哪些呢?

👸小媛:1、2、3 吗?

🐰小C:是的,那你看看 1、2、3 加起来等于几呢?

👸小媛:1、2、3 相加等于 6。

🐰小C:这个 6 是不是本身的数?因为我们刚刚说的是 6 这个数能够被那几个数整除。

👸小媛:是的,难道这样的数就叫做完全数吗?

🐰小C:对的,懂了吧?然后 1、2、3 就叫做这个数的因子。

👸小媛:唔,那么简单?就这?

🐰小C:对呀,你以为有多难。

👸小媛:那代码怎么写呢?多谢小 C 教导。

🐰小C:你就是懒。首先我们算一下一个一个数有是数能够整除,你说怎么做?

👸小媛:不懂。

🐰小C:那我们有一个数 1000,如何判断有什么数能够整除这个数?

👸小媛:用循环吗?

🐰小C:是的,直接使用一个循环,设置一个循环变量,小于 1000 开始递增,如果取模 1000 为 0,那么就表示可以整除。

👸小媛:唔,我懂了,你看看代码是不是这样。

#include<stdio.h>
int main()
{int a;printf("能够被整除的数有:");for(a=1;a<1000;a++){if(1000%a==0){printf("%d\n",a);}}return 0;
}

👸小媛:下面是结果。

🐰小C:不错,那我们的下一步是什么?

👸小媛:下一步呀?对呀,我们的下一步是啥?我忘了。

🐰小C:我们的下一步就开始记录这些数的和是否等于本身 1000。

👸小媛:对哟,我懂代码怎么写了。

#include<stdio.h>
int main()
{int a,s=0;printf("能够被整除的数有:");for(a=1;a<1000;a++){if(1000%a==0){printf("%d\n",a);s=s+a;}}if(s==1000){printf("1000 是完全数\n");}else{printf("1000 不是完全数\n");}return 0;
}

👸小媛:然后得出结果,1000 不是完全数。

🐰小C:哈哈哈,会了吧?

👸小媛:会了,挺简单的,好了,那我就先走了,多谢小 C教导。

🐰小C:别急,你想想题目是啥?

👸小媛:题目是说求一个范围内的完全数有哪些,怎么了?

🐰小C:你现在不是只求了一个数 1000,没有求得一个范围的所有数呢。

👸小媛:啊!对哟,所以应该是1-10000 或者说 1-100000 之内有哪些完全数。

🐰小C:索引你这个题还没做完呢。

👸小媛:小C 哥求教。

🐰小C:其实很简单,你想想,之前的代码中 1000 是一个数,我们把这个 1000 编程一个可递增的变量不就好了?

👸小媛:你的意思是说这个 1000 用一个循环变量来控制?然后弄个循环嵌套?

🐰小C:是的,你看看下面的代码。

#include<stdio.h>
int main()
{int a,s=0,j=1;printf("完全数有:");while(j<10000){s=0;for(a=1;a<j;a++){if(j%a==0){s=s+a;}}if(s==j){printf("%d 是完全数\n",j);}j=j+1;}return 0;
}

👸小媛:唔,上面的代码就是在原有的代码上加了一个外层循环,就把那个 1000 当作了循环变量,然后把这个外层循环变量 j 拿到之前的代码中替换掉1000就可以了?

🐰小C:是的,还有一点就是把那个计算因子和的变量每次都要置零,这样每次加的数才不会保留上一次的结果,也就是 s=0; 这个代码。

👸小媛:懂了,谢谢小 C,我运行出来了。

🐰小C:那就行,那就没啥问题了。

👸小媛:好耶~

前言

本专栏内容将会以轻松、简单的方式完成习题的解答,用情景再现的文章风格使读者能够在轻松愉悦的阅读氛围中完成知识的吸收,本专栏考虑读者的吸收能力,不讲解过多高效的计算方法,降低阅读门槛,希望各位多多支持~

作者简介

作者名:1_bit

简介:CSDN博客专家,2020年博客之星TOP5,蓝桥签约作者。15-16年曾在网上直播,带领一批程序小白走上程序员之路。欢迎各位小白加我咨询我相关信息,迷茫的你会找到答案。

博客地址:https://i1bit.blog.csdn.net


本专栏已参加 CSDN 蓄力计划,感谢读者支持。

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

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

相关文章

【三维激光扫描】第四章:点云数据处理

第一节 点云数据处理流程 由于外业获取点云数据时的多种因素影响,点云数据质量直接影响到三维建模等方面的应用,点云数据处理环节非常重要。本章主要介绍数据处理流程,数据的配准:滤波、缩减、分割、分类,最后介绍点云数据应用。 5.1 数据处理流程 5.1.1 数据处理软件 …

台式计算机硬件输入设备,台式电脑硬件配置有哪些

台式电脑硬件配置你知道有哪些?电脑的配置一般是指电脑的硬件配件的高档程度、性价比等&#xff0c;电脑的性能好坏主要决定于以下主要硬件配置。一起来看看台式电脑硬件配置有哪些&#xff0c;欢迎查阅!组装台式电脑配置1、实用性机型建议&#xff1a;首选1&#xff1a;intel…

mysql 如何用一条SQL将一张表里的数据插入到另一张表 3个例子

1. 表结构完全一样 insert into 表1select * from 表2 2. 表结构不一样&#xff08;这种情况下得指定列名&#xff09; insert into 表1 (列名1,列名2,列名3)select 列1,列2,列3 from 表2 3、只从另外一个表取部分值 insert into 表1 (列名1,列名2,列名3) values(列1,列2,(sel…

Android WebView和JavaScript交互

JavaScript在现在的网页设计中用得很多&#xff0c;Android 的WebView可以载入网页&#xff0c;WebView也设计了与JavaScript通信的桥梁。这篇主要介绍一下WebViewk控件如何和JavaScript进行交互。 WebView: WebView和网页相关的主要有一下几个方法&#xff1a;  setWebViewCl…

Microsoft Dev Box 带来全新云上开发体验

在 5 月 24 日, 微软的产品经理 Anthony Cangialosi 在 Azure 社区发布了一篇博客(Introducing Microsoft Dev Box)&#xff0c; 宣布推出 Microsoft Dev Box !这是一种新的云服务&#xff0c;托管在 Microsoft Azure 中&#xff0c;提供了一个开箱即用的开发工作站&#xff0c…

游戏开发如此简单?我直接创建了一个游戏场景【python 游戏实战 02】

前言 本系列文章将会以通俗易懂的对话方式进行教学&#xff0c;对话中将涵盖了新手在学习中的一般问题。此系列将会持续更新&#xff0c;包括别的语言以及实战都将使用对话的方式进行教学&#xff0c;基础编程语言教学适用于零基础小白&#xff0c;之后实战课程也将会逐步更新…

【三维激光扫描】第五章:基于点云数据的三维建模

第一节 绘制立面图 1. 打开CAD 2014,新建一个文件,模板选择acadiso.dwt,如下图。 2. 点击插入→创建点云。

Flutter之基本数据类型测试

1、Flutter的数据基本类型 Dart语言里一切皆为对象&#xff0c;所以如果没有将变初始化,那么它的默认值为null Number(int、doubkle)StringBoolean(bool) List Map2、测试代码 void testData() {//Number包含了int和doubleint a 4;int b 8;print(a b);int a1;if (a null)…

清北·NOIP2017济南考前冲刺班 DAY1 morning

立方数(cubic) Time Limit:1000ms Memory Limit:128MB 题目描述 LYK定义了一个数叫“立方数”&#xff0c;若一个数可以被写作是一个正整数的3次方&#xff0c;则这个数就是立方数&#xff0c;例如1,8,27就是最小的3个立方数。 现在给定一个数P&#xff0c;LYK想要知道这个数…

2020美国纽约大学计算机科学排名,2020美国纽约大学排名第几

纽约大学在2020年《美国新闻与世界报道》美国全国性大学排名中排名第29名&#xff0c;在2020年QS世界大学排名中排名第39名。纽约大学专业排名QS世界大学生命科学与医学专业排名 2020年 第40名QS世界大学医学专业排名 2020年 第34名QS世界大学牙科专业排名 2020年 第14名QS世界…

saltstack 安装nginx

1. 目录结构[rootqing salt]# tree /srv/salt/nginx//srv/salt/nginx/-- config.sls-- files| -- nginx| -- nginx-1.0.15.tar.gz| -- nginx.conf| -- nginx_log_cut.sh| -- nginx-upstream-jvm-route-0.1.tar.gz-- init.sls-- install.sls1 directory, 8 files2. [r…

ArcGIS实验教程——实验三十一:ArcGIS构建泰森多边形(Thiessen Polygon)实例精解

泰森多边形是进行快速插值和分析地理实体影响区域的常用工具。例如,用离散点的性质描述多边形区域的性质,用离散点的数据计算泰森多边形区域的数据。泰森多边形可用于定性分析、统计分析和临近分析等。 ArcGIS实验视频教程合集:《ArcGIS实验教程从入门到精通》(附配套实验…

Python的魔法方法 .

基本行为和属性 __init__(self[,....])构造函数 . 在实例化对象的时候会自动运行 __del__(self)析构函数 . 在对象被回收机制回收的时候会被调用 __str__(self)输出函数 . 在实例对象请求输出的时候会被调用. __repr__(self). 当直接调用实例对象的时候会被调用 __new__(cls,[,…

游戏角色开始动起来了,真帅!【python 游戏实战 03】

前言 本系列文章将会以通俗易懂的对话方式进行教学&#xff0c;对话中将涵盖了新手在学习中的一般问题。此系列将会持续更新&#xff0c;包括别的语言以及实战都将使用对话的方式进行教学&#xff0c;基础编程语言教学适用于零基础小白&#xff0c;之后实战课程也将会逐步更新…

如何让 ASP.NET Core 支持绑定查询字符串中的数组

前言有网友在交流群中询问&#xff0c;如何让 ASP.NET Core 支持绑定查询字符串中的数组&#xff1a;据说&#xff0c;在 .NET 7 中已经支持了&#xff1a;但是&#xff0c;在这之前的 .NET 版本能实现相同功能吗&#xff1f;ByteArrayModelBinder这时&#xff0c;群里的网友提…

Docker Storm开发环境搭建

2019独角兽企业重金招聘Python工程师标准>>> 1. compose文件 storm-stack.yml version: 3.1services:zookeeper:image: zookeepercontainer_name: zookeeperrestart: alwaysports:- 2181:2181nimbus:image: stormcontainer_name: nimbuscommand: storm nimbusdepend…

Android之解决YouTubePlayerView启动在Android5.0左右的手机出现奔溃问题

1 问题 用YouTubePlayerView(https://github.com/PierfrancescoSoffritti/android-youtube-player)在部分Android5.0手机上初始化的时候出现手机奔溃,错误提示如下 关键日志如下: Error inflating class com.pierfrancescosoffritti.androidyoutubeplayer.core.player.v…

重庆大学计算机课程设计,计算机组成原理课程设计报告重庆大学.doc

计算机组成原理课程设计报告重庆大学计算机组成原理课程设计报告题目&#xff1a;微程序设计专业&#xff1a;计算机科学与技术班级&#xff1a;指导老师&#xff1a;目录一、摘要二、设计要求三、微程序控制器原理四、总体设计五、测试六、结论七、参考文献目录八、 个人总结重…

一些服务器编程的概念

IO线程&#xff1a;有Event loop的线程&#xff0c;每个线程有且有一个loop&#xff0c;用per thread变量记录这个loop的对象地址&#xff0c;如果这个变量非空可以知道这个线程是IO线程 Channel&#xff1a;绑定到一个且只能一个loop&#xff0c;即某个IO线程&#xff0c;负责…

南方方洲号无人测量船系统简介

南方智能测量船系统由小型无人船、自动导航模块、声纳探测模块、外围传感模块、岸基操控终端、无人船专用软件等部分组成。将先进的卫星定位、声纳、传感器与智能导航控制等众多技术相结合,提出了高精度、智能化、集成化、机动化、网络化的勘测解决方案。该系统能自主航行并完…