// 2b.cpp
#include <iostream>
using namespace std;
int raiz_entera(int x, int y, float n);
int main() {
float num = 289;
int w;
w = raiz_entera(1,num,num);
cout<<"Raiz entera = "<<w<<endl;
return 0;
}
int raiz_entera(int x, int y, float n) {
int z, z_cuad, zmas1_cuad;
if (x == y)
return x;
else {
z = (int) (x+y)/2;
z_cuad = z*z;
zmas1_cuad = (z+1)*(z+1);
if(z_cuad > n)
return raiz_entera(x,z,n);
if(zmas1_cuad <= n)
return raiz_entera(z+1,y,n);
return z;
}
}