美文网首页iOS笔记
开平方算法(swift)

开平方算法(swift)

作者: 狗蛋的春天 | 来源:发表于2020-09-14 21:46 被阅读0次

给定一个数,求平方根

一般在正常的学习过程中,4的平方根是2,9的平方根是3。。。。,但是机器是不懂这种思维方式的,需要有一定的逻辑实现。
这里采用两种简便算法求其结果

1、二分查找法

    1、先从0-n之间的中间数mid开始查找,如果这个mid*mid中间数相乘大于n,就说明平方根在0-mid之间,以此类推
    2、如果如果这个mid*mid中间数相乘小于n,说明平方根在mid-n之间,以此类推
    3、代码实现如下
        func kaiPingFang(num: CGFloat) -> CGFloat {
            var low: CGFloat = 0
            var high = num
            let FixedNum:CGFloat = 0.0001
            var mid = (low + high) / 2 //中间值
            while (high - low) > FixedNum {
                  if mid * mid > num {
                      //如果大于num,说明平方根在low--mid之间  把mid赋值给high
                      high = mid
                  }else{
                      //如果小于num,说明平方根在mid--high之间  把midz赋值给low
                      low = mid
                  }
                  mid = (low + high) / 2
              }
              return mid
         }

相关文章

网友评论

    本文标题:开平方算法(swift)

    本文链接:https://www.haomeiwen.com/subject/wjetyktx.html