C言語なら俺に聞け(入門篇) Part 46
■ このスレッドは過去ログ倉庫に格納されています
0253デフォルトの名無しさん
2009/03/07(土) 14:13:46double root(int num, int deapth)
{
double ret = 0.0;
double unit = 1.0;
int d;
for(d = 0; d < deapth; ret += unit) {
/* ぴったりですけど */
if(num == SQPOW(ret)) break;
/* 越えたんですけど */
if(num < SQPOW(ret)) {
ret -= unit; /* 一個前なんですけど */
unit /= 10.0; /* 位変えるんですけど */
d++;
}
}
return ret;
}
を作りましたが、root(5, 100)とすると
フリーズしてしまいます。どうすればいいでしょうか?
■ このスレッドは過去ログ倉庫に格納されています