```
how to test if a num is a square root?
ex: 9 is square root
3 is not square root
/////////////////////////////////////////////
//do not worry about sytax.
int x = 0; //always start at 0
int y = 101010; //is this a square root?
square(x, y){
if((x*x) >= y){ //not a square root
return false;
}
else if((x*x) == y) //it is a square root
return true;
}
else{ //inc x by 1
square(x+1, y);
}
}
this algorithm works fine when y is small int. ex 4, 10, 20.
but when i put y to be large ex 10000. than i get it to problem.
this is bc x start out with 0 and slowing get inc by 1. this takes alot of time.
is there better way to do this by using recursion? may be there is some formula that i dont know about.
```

## Recommended Answers

Jump to PostI believe the IBM guess and go algorithm which was invented in either the 1980's or the 1990's was a successful square root algorithm which is quote simple actually. As simple as the logic is it can be a pain to code so I shall explain.

Basically you get the …

## All 3 Replies

ddanbe
2,724
Professional Procrastinator
Featured Poster

JamesCherrill
4,394
Most Valuable Poster
Moderator
Featured Poster

cwarn23
387
Occupation: Genius
Team Colleague
Featured Poster

mKorbel
commented:
interesting
+10

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts learning and sharing knowledge.