c++ - 控制台应用程序未运行且不显示任何内容
问题描述
问题是要解决这个问题。
13195 的质因数是 5、7、13 和 29。数字 600851475143 的最大质因数是多少?
我写了这段代码
#include <iostream>
#include <math.h>
using namespace std;
bool prime(long int a);
int main()
{
long int b = 600851475143/2;
long int k;
for(long int i = 1; i <= b ; i++)
{
if(b % i == 0 && prime(i) == true)
{
k = i;
}
}
cout << k << endl;
return 0;
}
bool prime(long int a)
{
bool p = true;
for(long int i = 2; i <= sqrt(a) && p == true ; i++)
if(a % i == 0) p = false;
return p;
}
当我在构建后执行时,它会打开一个控制台,并且什么也不显示
解决方案
代码很好。600851475143/2 只是一个很大的数字,所以您必须等待几分钟才能打印出结果。此外,如果它是素数,那么您将测试两次,这会使复杂性不必要地高得多。尝试这个:
long int b = 600851475143/2;
long int k = b;
for(long int i = 2; i < b ; i++)
{
if(b % i == 0)
{
k = i;
break;
}
}
cout << k << endl;
推荐阅读
- python - ImportError:libgthread-2.0.so.0:无法打开共享对象文件:使用 Docker 容器导入 cv2 时没有此类文件或目录
- arrays - Crystal Report - 当拆分数组的值与给定的字符串值相同时选中复选框
- excel - 根据使用 VBA 修改的日期打开所有最新的 3 个文件时出现问题
- gremlin - 在 gremlin 查询中组合 where & 和 steps 的替代方法
- python - OpenCV 在 Jupyter Notebook 中出现错误,但在 Python CLI 中有效
- debugging - Emacs,如何修复“make-variable-buffer-local 不在顶层调用”?
- javascript - Mongo/Node 通过来自外部 JSON 的 productID 更新数据
- flutter - 将开关图标放在两个文本框上
- reactjs - react-bootstrap 模态未显示
- javascript - 用于脚本和自动化的便携式 Javascript 可执行文件