质因数分解

cpp 复制代码
#include <stdio.h>

int main() 
{
    long long x;
    
    while (scanf("%lld", &x) != EOF) 
    { // 读取输入直到文件结束
        if (x == 0) break; // 如果输入为0则退出循环
        
        for (long long i = 2; i * i <= x; ++i) 
        {
            while (x % i == 0) 
            { // 当x能被i整除时
                printf("%lld ", i); // 输出质因数i
                x /= i; // 将x除以i
            }
        }
        
        if (x > 1) 
        { // 如果x大于1,那么它本身就是一个质数
            printf("%lld ", x);
        }
        
        printf("\n"); // 每组输出一行
    }
    
    return 0;
}

1.把握好数学上质数的性质

2.能用for循环解决的问题尽量避免数组,现阶段使用数组会使问题复杂化

相关推荐
小尧嵌入式7 分钟前
C++11线程库的使用(上)
c语言·开发语言·c++·qt·算法
蓝色汪洋16 分钟前
luogu填坑
开发语言·c++·算法
小年糕是糕手30 分钟前
【C++同步练习】类和对象(三)
开发语言·jvm·c++·程序人生·考研·算法·改行学it
jllws130 分钟前
数据结构_输入法的实现&五笔输入法浅析
数据结构
Learner__Q31 分钟前
每天五分钟:leetcode动态规划-递归与递推_day2
算法·深度优先
代码游侠35 分钟前
学习笔记——Linux内核链表
linux·运维·笔记·学习·算法·链表
发疯幼稚鬼37 分钟前
插入排序与冒泡排序
c语言·数据结构·算法·排序算法
小年糕是糕手40 分钟前
【C++同步练习】内存管理
开发语言·jvm·数据结构·c++·程序人生·算法·改行学it
蒙奇D索大41 分钟前
【数据结构】考研408|从B树到B+树:多路平衡的优化形态与数据库索引基石
数据结构·笔记·b树·学习·考研
不会代码的小猴41 分钟前
C++的第十五天笔记
数据结构·c++·笔记