【发布时间】:2016-02-10 01:32:30
【问题描述】:
我想向用户询问一个整数,并打印出质因数。 示例:用户输入 100,程序显示 2 2 5 5
到目前为止,我有以下内容:
#include <iostream>
using namespace std;
void factors(int n){
int z = 2;
while (z * z <= n)
{
if (n % z == 0)
{
cout << z;
n = (n / z);
}
else
{
z++;
}
}
if (n > 1)
{cout << n << "\n";}
}
int main()
{
int x;
cout << "Input positive integer greater than 1: ";
cin >> x;
factors(x);
cout << "The result: " << x;
return 0;}
我的问题是如何让我的主要功能与因素程序进行通信。我运行程序,我收到要求输入的消息,我输入 12,我收到消息“结果”,但数字是 25,还有 12,用户输入的数字。就像程序正在避免我的因素(int n)程序。请帮助语法?!?
我的问题在于我认为的语法。 因为我发现以下函数可以帮助列出主要因素: Finding prime factors -user44810
define factors(n)
z = 2
while (z * z <= n)
if (n % z == 0)
output z
n /= z
else
z++
if n > 1
output n
谢谢!!!
【问题讨论】:
-
不要为不同的、不相关的语言添加标签!并正式提出您的问题!。
-
您之前找到的代码是伪代码,这意味着它不一定遵循任何语言的正确语法,只是为了帮助理解代码应该遵循的过程。
-
谢谢,我对伪代码的解释在程序的顶部。但是,它不会返回正确的结果。
-
@IglooJits 请注意,您不得篡改自己的问题。发布时,您根据 CC BY SE 许可将其不可撤销地授权给 Stack Exchange。进一步尝试破坏您自己的问题可能会导致版主锁定它。
-
源格式很差。如果我在给你的作品打分,我会给它“F-”,不打扰测试/进一步阅读,然后继续下一次提交。
标签: c++