最高和最低数字sqrt

时间:2017-10-12 21:32:29

标签: c++ sqrt

所以我被困住了,或者我把自己弄糊涂了以下内容: 我需要使用for循环来计算正整数

的平方根的顶部和底部数字

即:

Enter Num: 10
Top is 4
Bottom is 3

Enter Num: 16
Top is 4
Bottom is 3

Enter Num: 8
Top is 3
Bottom 2 

修改

我有

for(int top =1;top >=num; top++)

top >=num去那儿吗?我知道10^(1/2)3.16

顶部和底部是如何找到的?我不知道sqrt(10)顶部和底部是4和3 ...这是分数还是简化方块?我对这个问题很困惑。

基于这里的帮助是答案

for(int top = 1; top <=num  ; top++) 
{
   if( top * top >= num)
   {
        cout << "Top is " << top ;
        cout << "\nBottom is " << (top-1) << endl;
        top =num +1;
    }
}

1 个答案:

答案 0 :(得分:1)

你可以循环整数,直到你通过平方根:

int bottom = 0;
int top = 0;

for (int i = 1; i <= num; ++i) {
    if (i * i > num) {
        top = i;
        break;
    }
    bottom = i;
}