Program powinien wypisać pooddzielane spacjami kolejne liczby naturalne. Pierwszą z nich powinna być liczba , a ostatnią najbliższa liczba będąca kwadratem liczby naturalnej. Np:
Dla danych wejściowych:
42
poprawną odpowiedzią jest:
42 43 44 45 46 47 48 49
Mój sposób: program sprawdza czy podana liczba jest równa iloczynowi dwóch takich samych liczb, jeżeli podana liczba jest za duża pętla iteruje dwie liczby z iloczynu, a jeżeli iloczyn jest za duży program wyświetla podaną liczbę i jej iteracje dopóki, dopóty znajdzie liczbę równą iloczynowi. Dotychczasowy kod:
#include <iostream>
#include <cstdlib>
using namespace std;
int a;
int b = 2;
int main()
{
cin >> a;
if (a == (b * b))
{
cout << a;
if (a < (b * b))
{
cout << a;
a++;
}
else if (a > (b * b))
b++;
}
system("PAUSE");
}