首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在C++中以指数形式打印素数分解

在C++中以指数形式打印素数分解,可以通过以下代码实现:

代码语言:txt
复制
#include <iostream>
#include <vector>

// 判断一个数是否为素数
bool isPrime(int num) {
    if (num < 2) {
        return false;
    }
    for (int i = 2; i * i <= num; i++) {
        if (num % i == 0) {
            return false;
        }
    }
    return true;
}

// 打印素数分解结果
void printPrimeFactorization(int num) {
    std::vector<int> factors;
    for (int i = 2; i <= num; i++) {
        if (isPrime(i)) {
            while (num % i == 0) {
                factors.push_back(i);
                num /= i;
            }
        }
    }
    std::cout << "素数分解结果:" << std::endl;
    for (int i = 0; i < factors.size(); i++) {
        int count = 1;
        while (i + 1 < factors.size() && factors[i] == factors[i + 1]) {
            count++;
            i++;
        }
        std::cout << factors[i];
        if (count > 1) {
            std::cout << "^" << count;
        }
        if (i + 1 < factors.size()) {
            std::cout << " * ";
        }
    }
    std::cout << std::endl;
}

int main() {
    int num;
    std::cout << "请输入一个正整数:";
    std::cin >> num;
    printPrimeFactorization(num);
    return 0;
}

运行以上代码,用户输入一个正整数,程序将会以指数形式打印出该数的素数分解结果。例如,输入数字24,输出结果为:2^3 * 3。这表示24可以分解为2的3次方乘以3。

在这个问题中,没有提到具体的云计算相关内容,因此不需要提供腾讯云相关产品和产品介绍链接地址。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

7分58秒
22分1秒

1.7.模平方根之托内利-香克斯算法Tonelli-Shanks二次剩余

-

性价比打天下,国产AI芯片对AIoT行业有何影响?

4分48秒

1.11.椭圆曲线方程的离散点

1分1秒

多通道振弦传感器无线采集仪在工程监测中是否好用?

14分35秒

Windows系统未激活或key不合适,导致内存只能用到2G

5分33秒

JSP 在线学习系统myeclipse开发mysql数据库web结构java编程

16分8秒

人工智能新途-用路由器集群模仿神经元集群

领券