1028C基础-质数因子(C++)

题目描述

输入一个正整数,输出它的所有质数的因子(如180的质数因子为2、2、3、3、5)

输入描述

输出描述

样例输入

180

样例输出

2 2 3 3 5

编辑代码

# include<iostream>using namespace std;
int main()
{int num;
cin >> num;
for (int i = 2; i <= num; i++)
{while (num % i == 0){cout << i << ' ';num = num / i;}
}
}

求解质因数:

题目:将一个正整数分解质因数。
分析:根据数论的知识可知,任何一个合数都可以写成几个质数相乘的形式,这几个质数都叫做这个合数的质因数。例如:24=2×2×2×3。现在从键盘输入一个正整数,请编程输出它的所有质因数。
就是一个一个的除看是否能整除,直到K的值不小于n,如果都没有能整除得数,说明n是质数,符合质数的定义,不过应该是k<=(根号n)才对这样效率更高,因为n开平方的值是他能整除的最大的数
这个从根本上看是找出n的最小质因数,因为质数最小为2,所以k的初始值为2,n肯定是大于等于2才有意思,比如:n=12,第一次进入判断,得到12的最小质因数为2,这时n变成了6,第二次进入判断,得到6的最小质因数为2,这时n变为3,第三次进入判断,这时3不能被2整除,所以k++,k变成3,第四次进入判断,3的最小质因数为3,这时n变成1,跳出循环,结束,所以输出了223
方法一:一般解法:

#include <stdio.h>
void main()
{int i=2,n,k;
printf("输入不小于2的自然数: ");
scanf("%d",&n);
k=n;
printf("%d=",n);
while(k>1)
{if(k%i==0) {printf("%d*",i);k/=i;}
else i++;
}
printf("\b \b");
}

方法二:数组中的质因数:

#include<stdio.h>int main(){int a[6555], i, j, t=1;a[0]=2;for(i=3;i<65540;i+=2){for(j=2;j*j<=i;j++){if(i%j==0)break;}if(j*j>i){ a[t]=i;  t++; }}int n, n1, n2, x, y, f=0 ;while(scanf("%d",&n)!=EOF){x=0;for(i=0;a[i]<=n;i++)if(a[i]==n){printf("%d=1*%d\n", n, n);x=1;}if(x==0){printf("%d=", n);for(i=0;a[i]<n;i++){if(n%a[i]==0){n=n/a[i];printf("%d*",a[i]);i--;}}printf("%d\n",n);}}return 0;}
#include <stdio.h>void f(){int n,a[100],count=0,k;scanf("%d",&n);for (k=2;k<n;k++){if(n%k==0){a[count]=k;count++;n=n/k;k--;}}a[count]=n;for(k=0;k<=count;k++){printf("%d\n",a[k]);}}int main(){f();return 0;}

质因数的求解(C语言和C++)相关推荐

  1. PaddlePaddle入门|百度零基础实践深度学习课程笔记——使用Python语言和Numpy库来构建神经网络模型

    前面的课程已经讲解了Python的一些基础操作和使用Notebook实现编程的基础知识,下面通过用Python语言和Numpy库来构建神经网络模型来初步实践. 波士顿房价预测任务 问题描述 波士顿房价 ...

  2. 为什么说C语言和linux是分不开的?

    为什么说C语言和linux是分不开的? 在很多人的眼里,C语言和linux常常是分不开的.这其中的原因很多,其中最重要的一部分是linux本身就是C语言的杰出作品.当然,linux操作系统本身对C语言 ...

  3. 语言翻译成汇编语言_学习编程有没有必要从C语言和C++学起?应该怎么学?

    硬件层级:这里也就是实体硬件,包括:CPU.内存.显卡等等...这些都不属于软件的范畴内. 汇编层级:在之前没有C/C++以及java之前,是汇编的年代.那么汇编语言对于我们来说,可读性是很查的,不适 ...

  4. 多语言互通:谷歌发布实体检索模型,涵盖超过100种语言和2000万个实体

    来源:新智元 本文约1500字,建议阅读5分钟 实体链接(Entity linking)通常在自然语言理解和知识图谱中起着关键作用.谷歌AI研究人员近期提出了一种新的技术,在这种技术中,可以将特定语言 ...

  5. 如何混合编译C语言和C++

    如何混合编译C语言和C++ 实际开发过程中,C++中会调用C与语言编写的代码,我在网络上面找到一篇写得很好的文章 http://blog.csdn.net/keensword/article/deta ...

  6. c bool 类型检查_C语言和C+的区别是什么?8个点通俗易懂的告诉你!

    有些初学的同学傻傻分不清其中的区别,下面我将详细的讲解C语言和C++的区别点帮助大家尽快的理解.(但是呢,C语言和C++可是有着密不可分的关系哦,一般学习其中一种都会需要学习另一种!) 1.关键字 蓝 ...

  7. r语言和python-r语言和python

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! r的取值范围是,r=1表示完全正相关! r=-1表示完全负相关! r=0表示完全 ...

  8. r语言和python-R语言 vs Python对比:数据分析哪家强?

    什么是R语言? R语言,一种自由软件编程语言与操作环境,主要用于统计分析.绘图.数据挖掘.R本来是由来自新西兰奥克兰大学的罗斯・伊哈卡和罗伯特・杰特曼开发(也因此称为R),现在由"R开发核心 ...

  9. r语言和python-R语言和Python一块学习会弄混吗

    原标题:R语言和Python一块学习会弄混吗 感谢关注天善智能,走好数据之路↑↑↑ 欢迎关注天善智能,我们是专注于商业智能BI,人工智能AI,大数据分析与挖掘领域的垂直社区,学习,问答.求职一站式搞定 ...

最新文章

  1. 编程小白的第一本python入门书-《编程小白的第一本Python入门书》读书笔记
  2. poj3279 Fliptile
  3. 计算机网络现在成功,百收计算机网络努力的人是怎么成功的
  4. vba上传指定文件ftp服务器
  5. 目标检测之YOLO V2 V3
  6. 9.特殊权限 软连接 硬链接
  7. DIV实现CSS 的placeholder效果
  8. 修改Noteexpress插入参考文献序号的颜色
  9. 计算机培训ppt课件,计算机基础操作培训ppt课件.ppt
  10. 绘制AutoCad中的曲线(Curve)
  11. 基于ZYNQ的帧差法多运动目标检测(开源)
  12. 跨越opengl和d3d的鸿沟(四):完结篇,平台和未来
  13. 改Robust Video Matting为Robust Image Matting
  14. 使用Oracle数据库的一些小记录 1
  15. 设计评审CheckList
  16. Arduino之干接点控制继电器取反实例
  17. 七夕h5开发就找TOM小游戏
  18. 学习笔记 | 建站流程
  19. laravel 手动创建分页器LengthAwarePaginator
  20. Expected more than 1 value per channel when training, got input size torch.Size([1, **])

热门文章

  1. [系统安全] 三十.CS逆向分析 (1)你的游戏子弹用完了吗?Cheat Engine工具入门普及
  2. 晶体管的 栅极gate 材料选用 多晶硅polysilicon,并采用 自对准工艺 self-aligned IC后端版图 【VLSI】
  3. IDEA无法创建目录
  4. 什么是网络存储技术?DAS、NAS、SAN、IP-SAN,主要内容分别是什么?
  5. wether.html5.qq.com,怎样用一天时间,开发上架一个天气小程序
  6. vue 请求直接写入的json文件
  7. arduino控制烟雾报警器
  8. java设计模式之五(原型模式)
  9. 认识流媒体协议,从 RTSP 协议解析开始!
  10. 【PMP】PMBOK 笔记 第5章 项目范围管理