Problema #3613 FMultiplu_BAC

Cerința
Subprogramul multiplu are un singur parametru, n, prin care primește un număr natural (n∈[1,104]). Subprogramul returnează cel mai mic multiplu nenul al lui n cu proprietatea că este pătrat perfect.

Scrieți definiția completă a subprogramului.

Exemplu
Dacă n=72 sau n=144, subprogramul returnează numărul 144 (144=122).

Important
Soluția propusă va conține definiția funcției cerute. Prezența în soluție a altor instrucțiuni poate duce erori de compilare sau de execuție care vor avea ca efect depunctarea soluției.

Răspuns :

Răspuns:Ma eu am facut rezolvarea asta care functioneaza pentru orice numar cerut din acel interval, desi pe pbinfo imi da doar 20 de puncte.Poate imi gaseste cineva greseala, ori o fi de la ei.Poti incerca in compilator orice numar vrei sa vezi ca functioneaza.

Edit: Ti-am atasat solutia de 100p

Explicație:

unsigned int multiplu(unsigned int n)

{

   unsigned int short gasit=0;

   unsigned int next=1,m=n;

   while(!gasit)

   {

       m=n*next;

       if(((float)sqrt(m)*(float)sqrt(m))==m)

           gasit=1;

       next++;

   }

   return m;

}