Da, palo je i meni jutros na pamet da stavim bool, te da ide petlja do n/2 i da povecavam za jedan, ako prode do n/2 i bude zadovoljeno onda nebi trebao imati prirodan broj kao korijen
Ovo ti je čisto dovoljno.
Inače ako se želiš igrati s tim možeš i faktorizacijom broja na prim brojeve. Ako broj ima paran broj prim faktora i ako kraćenjem istih dobiješ prazan skup, kvadratni korjen broja je cijeli broj.
Neka nikog ne buni što nisam uključio math biblioteku u zaglavlje, ovaj VS je munjen sto posto, čim sam stavio iostream biblioteku mogu se dokopati svih funkcija, intellisense mi ih nudi sam.
#include<iostream>
using namespace std;
int main()
{
int broj;
double korjen;
do
{
cin >> broj;
korjen = sqrt(broj);
} while (korjen - (int)korjen != 0);
return 0;
}