Внезапный перерыв в цикле в программе, чтобы найти факторы

Я писал код, который вычисляет два фактора для любого заданного числа, используя два вложенных цикла «Пока», но после одной итерации цикл просто останавливается

программа

#include <iostream>
#include <conio.h>
using namespace std;
long int Password;

void main()
{
long int n=2,n1=2;
cout<<"Type the number whose factor you need"<<endl;
cin>>Password;
while( n <  3600 )
{
while( n1 < 3600 )
{
if( n*n1 == Password )
{
cout<<"your Factors are "<<n<<" and "<<n1<<endl;
getch();
}
else
{
n1++;
break;
}
}
n++;
}
}

Вывод работает только для небольших чисел, но когда вставляются немного большие числа, программа завершается. Я не понимаю проблему, так как код совершенно в порядке. У меня менее мощный процессор?

-3

Решение

Ваша программа не рассчитывает факторы любого числа. Также, название номера «Пароль» сбивает с толку.

Может быть, вы хотите что-то подобное в C ++:

#include <iostream>

using namespace std;

int main() {
unsigned int number;

cout << "Enter a positive integer whose factors you need: " << endl;
cin >> number;

cout << "Factors of " << number << " are ";
for (int i = 1; i <= number; ++i) {
if (number % i == 0)
cout << i << " ";
}
cout << endl;

return 0;
}

Как было отмечено в комментариях, в C ++ у вас есть int main() не void main()хотя некоторые компиляторы поддерживают void main(),

1

Другие решения

Других решений пока нет …