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

分解质因子,将一个不小于2的整数分解质因数,例如,输入90,则输出:90=2*3*3*5

        假设一个不小于2的整数n,对从2开始的自然数k,这个试探它是否是整数n的一个因子,如果是,则输出该因子,并将n/k的结果赋给n(接下来只需要对n除以已经找到的因子之后的结果继续找因子)。如果n的值不是大于1(即n的值为1,),则n的所有因子都找完了,因此需要结束循环。

注意:并不是找到了k是一个因子之后k就立刻+1,因为可能分解后的n中k仍然是n的因子,因此需要使用到 if(n%k==0) else  k++;

选取90进行计算就知道了,90%2==0,n=90/2=45,所以k就是一个质因子;接下来继续45%2!=0,因此k=3,45%3==0,n=45/3=15,所以k=3就是一个质因子;接下来15%3==0,n=15/3=5,所以3仍然还能是他的一个质因子;接下来5%3!=0,5%4!=0,5%5==0,n=5/5=1,这时是最后一个因子,因此要与之前的不同,这里在else语句中输出的是最后一个k,进行换行后要使用break语句跳出整个循环。这样就结束分解了。

#include<stdio.h>
int main()
{//将一个不小于2的整数分解质因数。例如,输入90,则输出:90=2*3*3*5 int n,k=2;printf("请输入一个不小于2的整数:");scanf("%d",&n);printf("质因子分解的结果为:%d=",n);while(1){if(n%k==0){n/=k;if(n>1)printf("%d*",k);else{printf("%d\n",k);break;}}else k++;}return 0;
}

http://www.lryc.cn/news/103578.html

相关文章:

  • C语言,vs各种报错分析(不断更新)
  • AR开发平台 | 探索AR技术在建筑设计中的创新应用与挑战
  • 小白到运维工程师自学之路 第六十集 (docker的概述与安装)
  • SpringBoot 集成 Elasticsearch
  • 【ES】使用日志记录
  • svn还原本地代码
  • zore-shot,迁移学习和多模态学习
  • 【Golang 接口自动化07】struct转map的三种方式
  • 华为数通HCIA-网络模型
  • 端口的解说
  • “深入了解Spring Boot: 快速构建微服务应用的利器“
  • 华为OD机试 Java 实现【批量处理任务】【2023 B卷 200分】,二分查找
  • C# 2的幂
  • linux vi指令大全
  • jdk8使用okhttp发送http2请求
  • virbr是什么设备
  • MyBatis缓存-提高检索效率的利器--二级缓存
  • 开心档之CSS !important 规则
  • 深入篇【C++】手搓模拟实现list类(详细剖析底层实现原理)模拟实现正反向迭代器【容器适配器模式】
  • OnTrigger的几种情况
  • 地产变革中,物业等风来
  • (五)springboot实战——springboot自定义事件的发布和订阅
  • AVFoudation - 音频测量
  • 学习记录——TransNormerLLM
  • 【Qt】利用Tool Button控件创建下拉菜单按钮
  • 1.2 eureka注册中心,完成服务注册
  • 【100天精通python】Day20:文件及目录操作_os模块和os.psth模块,文件权限修改
  • 回归预测 | MATLAB实现PSO-GPR粒子群优化高斯过程回归多输入单输出回归预测
  • python_PyQt5开发验证K线视觉想法工具V1.1 _增加标记类型_线段
  • 中文多模态医学大模型智能分析X光片,实现影像诊断,完成医生问诊多轮对话