C 练习实例19

题目:一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=1+2+3.编程找出1000以内的所有完数。

程序分析:请参照:C 练习实例14。

步骤分析:

  1. 写一个函数判断是否是完数
    1. 找出因子,找到一个就加到因子和里面
    2. 判断因子之和是否是等于这个数,如果等于就是完数
  2. 1-1000遍历出完数
  3. 打印输出

代码实现:

//找出1-1000中的完数
#include <stdio.h>
int comNum(int n)			//comNum()函数判断是否为完数
{	int i,sum=0;for(i=1;i<n;i++)		//从1开遍历,不包括它本身,遍历出所有因子{if(n%i==0)			//如果n能被1~(n-1)之间的数整除,说明是因子sum+=i;			//因子之和}if(n==sum)return 1;			//c中没有boll类型,用返回0或1来代替elsereturn 0;
}
int main()
{int i;for(i=1;i<=1000;i++){	//遍历1-1000if(comNum(i))		//如果是完数,打印输出printf("%d\n",i);}return 0;
}

其实在找因子那一步时,是不用循坏到(n-1)的,循环到n/2即可,于是有了改版:

//找出1-1000中的完数
#include <stdio.h>
int comNum(int n)			//comNum()函数判断是否为完数
{	int i,sum=0;for(i=1;i<=n/2;i++)	//从1开遍历,不包括它本身,遍历出所有因子{if(n%i==0)			//如果n能被1~(n-1)之间的数整除,说明是因子sum+=i;			//因子之和}if(n==sum)return 1;			//c中没有boll类型,用返回0或1来代替elsereturn 0;
}
int main()
{int i;for(i=1;i<=1000;i++){	//遍历1-1000if(comNum(i))		//如果是完数,打印输出printf("%d\n",i);}return 0;
}

只改变了for循环里面的一条语句

i<n;→i<=n/2;

当n为偶数,则要遍历到它的一半,所以要取“=”。当它为奇数,遍历到n/2舍去小数部分的值。

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

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

相关文章

软文写作三大原则与技巧,媒介盒子分享

网络技术的快速发展带来传播环境的巨变&#xff0c;软文已经成为各大企业宣传的主要形式之一。而软文广告的核心就是其文案&#xff0c;一个好的软文不仅能够传达品牌理念&#xff0c;还能吸引用户了解品牌&#xff0c;提高转化率&#xff0c;今天媒介盒子就来和大家聊聊软文写…

二叉树的直径,力扣

目录 题目地址&#xff1a; 题目&#xff1a; 我们直接看题解吧&#xff1a; 审题目事例提示&#xff1a; 解题方法&#xff1a; 难度分析&#xff1a; 解题方法分析&#xff1a; 解题分析&#xff1a; 补充说明&#xff1a; 代码优化&#xff1a; 题目地址&#xff1a; 543. 二…

Minitab 20安装包下载及安装教程

Minitab 20下载链接&#xff1a;https://docs.qq.com/doc/DUmNYVGxtUnZkWUpk 1.选中下载好的安装包&#xff0c;鼠标右键解压到”Minitab 20“文件夹 2.选中Setup&#xff0c;鼠标右击选择“以管理员身份运行” 3.点击“下一步” 4.点击“下一步” 5.勾选我接受许可协议中的条…

wblogic中间件配置数据源

配置数据源 1.服务-数据源-配置-新建 2.单机选一般数据源 3.选择源名称、jndi名称、数据库类型 4.选择驱动 5.下一步 6.输入连接串信息 参考&#xff1a; 格式二&#xff1a;jdbc:oracle:thin:<host>:<port>:<SID> 数据库名称配置的sid 7.测试配置&#xff…

CEC2017(Python):七种算法(RFO、DBO、HHO、SSA、DE、GWO、OOA)求解CEC2017

一、7种算法简介 1、红狐优化算法RFO 2、蜣螂优化算法DBO 3、哈里斯鹰优化算法HHO 4、麻雀搜索算法SSA 5、差分进化算法DE 6、灰狼优化算法GWO 7、鱼鹰优化算法OOA 二、CEC2017简介 参考文献&#xff1a; [1]Awad, N. H., Ali, M. Z., Liang, J. J., Qu, B. Y., &…

MINCO+汽车

对于环境中的静态障碍物&#xff0c;我们构造几何自由空间来约束自我车辆的完整模型以保证安全。 对于动态障碍物&#xff0c;我们使用凸多边形来覆盖其形状。 然后&#xff0c;我们约束小车与障碍物多边形在每一时刻的符号距离[1]的下界近似&#xff0c;以保证小车的安全。 …

ssm基于BS架构的法律咨询系统的分析与设计论文

摘 要 如今社会上各行各业&#xff0c;都喜欢用自己行业的专属软件工作&#xff0c;互联网发展到这个时候&#xff0c;人们已经发现离不开了互联网。新技术的产生&#xff0c;往往能解决一些老技术的弊端问题。因为传统法律咨询信息以及法规信息管理难度大&#xff0c;容错率低…

MSVCP140_1.dll文件丢失的解决方法指南,MSVCP140_1.dll最快捷的修复手段

在近些年里&#xff0c;随着电脑技术的迅猛进步&#xff0c;我们对操作系统变得越来越依赖。然而&#xff0c;在使用过程中&#xff0c;我们也可能偶遇一些技术挑战&#xff0c;比如遇到 MSVCP140_1.dll 文件丢失的问题。本文旨在深入探讨这个常见的技术难题&#xff0c;并为大…

飞腾Ubantu22.04.3安装OpenNebula测试

目前登录权限存在问题-待解决。 1.概述 因OpenneBula官方镜像源只有AMD架构的镜像包不存在ARM的镜像包&#xff0c;借此用源码编译进行测试。 2.官网github地址 下载解压存放在服务器上&#xff1a; https://github.com/OpenNebula/minione/blob/master文件目录&#xff1…

LLM之RAG实战(十二)| 在RAG管道中实现上下文压缩和过滤

在RAG中可能面临的最大问题之一是检索器应该检索什么内容&#xff1f; ​ 实际使用中&#xff0c;检索到的上下文并不完全有用&#xff0c;可能检索处理较大的块中只有非常小的一部分与答案相关&#xff0c;还可能对于一个特定的问题需要来自多个块合并来得到答案。 一…

微同城本地小程序源码系统:顺风车+二手市场+跑腿功能+信息发布+广告功能 带完整的搭建教程

随着移动互联网的普及&#xff0c;小程序已成为各行业进行线上业务拓展的重要工具。微同城作为一款集顺风车、二手市场、跑腿功能、信息发布和广告功能于一体的本地小程序源码系统&#xff0c;旨在满足现代城市居民的多元化需求&#xff0c;提供一个方便、快捷、实用的服务平台…

k8s快速搭建

VMware16Pro虚拟机安装教程VMware16.1.2安装及各版本密钥CentOS7.4的安装包:提取码&#xff1a;lp6qVMware搭建Centos7虚拟机教程 搭建完一个镜像 关机 拍摄一个快照,克隆两个作为子节点 0. 环境准备 在开始之前&#xff0c;部署Kubernetes集群机器需要满足以下几个条件&#…

网络调试 UDP1,开发板用静态地址-入门5

https://www.bilibili.com/video/BV1zx411d7eC?p11&vd_source109fb20ee1f39e5212cd7a443a0286c5 1, 开发板连接路由器 1.1&#xff0c;烧录无OS UDP例程 1.2&#xff0c;Mini USB连接电脑 1.3&#xff0c;开发板LAN接口连接路由器 2. Ping开发板与电脑之间通信* 2.1 根据…

【霹雳吧啦】手把手带你入门语义分割の番外11:U2-Net 源码讲解(PyTorch)—— 代码的使用

目录 前言 Preparation 一、U2-Net 网络结构图 二、U2-Net 网络源代码 1、train.py &#xff08;1&#xff09;parse_args 参数 &#xff08;2&#xff09;SODPresetTrain 类 &#xff08;3&#xff09;SODPresetEval 类 &#xff08;4&#xff09;main 函数 &#x…

HackTheBox - Medium - Linux - Investigation

Investigation Investigation 是一款 Linux 机器&#xff0c;难度为中等&#xff0c;它具有一个 Web 应用程序&#xff0c;可为图像文件的数字取证分析提供服务。服务器利用 ExifTool 实用程序来分析图像&#xff0c;但是&#xff0c;正在使用的版本存在命令注入漏洞&#xff…

年度最整洁的海盗3.0版本

在修改海盗3.0客户端源码的时候&#xff0c;一直都存在这样的一个问题&#xff1a; 客户端在某些特定的情况下&#xff0c;会报内存错误导致程序崩溃。 经过调试&#xff0c;发现是那个MindPower3D的dll&#xff0c;在跳转地图等情况下卸载清理内存的时候&#xff0c;会偶发出…

进程的介绍及相关命令

首先&#xff0c;先了解一下计算机五大性能的命令 cpu top w 内存 top free 硬盘剩余 df 硬盘读写性能 iostat 网络带宽 iftop 一&#xff0c;进程与程序 1&#xff0c;什么是程序 &#xff1a; 硬盘上躺着&#xff0c;执行特点任务的一串代码 2&am…

Transformer从菜鸟到新手(三)

引言 这是Transformer的第三篇文章&#xff0c;上篇文章中我们了解了多头注意力和位置编码&#xff0c;本文我们继续了解Transformer中剩下的其他组件。 层归一化 层归一化想要解决一个问题&#xff0c;这个问题在Batch Normalization的论文中有详细的描述&#xff0c;即深层…

dll文件是什么,如何解决dll文件丢失

在使用电脑时是否遇到过关于dll文件丢失的问题&#xff0c;遇到这样的问题你是否会不知所措&#xff0c;其实dll文件丢失的解决伴有很多&#xff0c;今天这篇文章就将和大家聊聊dll文件是什么&#xff0c;以及如何解决dll文件丢失的问题。 一.Dll文件的作用 代码重用和模块化…

大创项目推荐 深度学习图像修复算法 - opencv python 机器视觉

文章目录 0 前言2 什么是图像内容填充修复3 原理分析3.1 第一步&#xff1a;将图像理解为一个概率分布的样本3.2 补全图像 3.3 快速生成假图像3.4 生成对抗网络(Generative Adversarial Net, GAN) 的架构3.5 使用G(z)生成伪图像 4 在Tensorflow上构建DCGANs最后 0 前言 &#…