一个大数拆成两个素数相乘

简介:
/************************************************************************/
/* 题目:将数字65535分解成若干个素数之积                                                                     
/************************************************************************/
#include <iostream>
#include <cmath>
using namespace std;

bool isPrime(long m);

int main()
{
	long i;
    long digit = 65535;
    long s = 1;
   
	cout << "65535 = ";
	for (i = 2; i <= digit / 2; i++)
	{
		if (isPrime(i) && digit % i == 0)
		{
			s *= i;
			if (digit / s != 1)
                cout << i << " * ";
			else
				cout << i << endl;
		}

	}
	system("pause");
	return 0;
}

//功能:判断素数
bool isPrime(long m)
{
	int i = 0;

	for (i = 2; i <= sqrt(m); i++)
	{
		if (m % i == 0)
			return false;
	}
	return true;
}

目录
相关文章
|
2月前
计算自然数的和
【10月更文挑战第18天】计算自然数的和。
34 10
|
存储
A除于B(大数相除)
A除于B(大数相除)
71 0
|
C++
C++ 超大整数相加、相乘的精确求解,以及10000的阶乘
C++ 超大整数相加、相乘的精确求解,以及10000的阶乘
120 0
|
存储 算法
经典算法之异或运算(无进位相加)
经典算法之异或运算(无进位相加)
经典算法之异或运算(无进位相加)
大数的四则运算(加,减,乘,除)处理
大数的四则运算(加,减,乘,除)处理
584 0
大数的四则运算(加,减,乘,除)处理
7-41 大数的乘法 (10 分)
7-41 大数的乘法 (10 分)
80 0
算法零基础——大数四则运算
算法零基础——大数四则运算
算法零基础——大数四则运算
|
算法
经典算法详解(3)将大于2的偶数分解成两个素数之和
1 #include 2 3 using namespace std; 4 5 bool isPrime(int n) { 6 for (int i = 2; i < n; i++) { 7 if (n%i == 0) { //能被2到把自身小1的数...
1355 0