二分法猜价格
2016-04-13 00:00
134 查看
假设商品价格在0-999之间,输入一个正确的价格.
方法1:从1开始从上逐进,直到与正确的相等
方法2:二分法,每次选取中间值,直至正确的值.
说明:二分法本质上分治法的一种的方法.
方法1:从1开始从上逐进,直到与正确的相等
方法2:二分法,每次选取中间值,直至正确的值.
说明:二分法本质上分治法的一种的方法.
'//程序用逐步法猜价格 '//假设价格都是整数,没有小数 Sub GP_Step() Dim Price&, i&, Guess&, Step& ' 正确价格,变量,猜想值 Dim Min&, Max& ' 最小值,最大值 Min = 1: Max = 999 With Sheet1 Price = .Cells(3, 1) For i = Min To Max Step = Step + 1 Guess = i If Guess = Price Then Exit For Next i .Cells(2, 5) = Guess .Cells(2, 4) = Step End With End Sub '//程序用二分法猜价格 '//假设价格都是整数,没有小数 Sub GP_Binary() Dim Price&, i&, Guess&, Step& ' 正确价格,变量,猜想值 Dim Min&, Max&, ex# ' 最小值,最大值,精度 ex = 0.1 Min = 1: Max = 999 With Sheet1 Price = .Cells(3, 1) Guess = Round((Min + Max) / 2, 0) Do Step = Step + 1 If Guess > Price Then Max = Guess ElseIf Guess < Price Then Min = Guess End If Guess = Round((Min + Max) / 2, 0) Loop Until Guess = Price .Cells(5, 5) = Guess .Cells(5, 4) = Step End With End Sub
相关文章推荐
- 全排列(序)
- 用R做一个产品MI分析表
- Java——面向对象(二)
- checkstyle代码扫描
- 1、UML概述
- 2、面向对象的分析与设计方法
- 加入购物车动画效果
- Hibernate 注解
- Mac安装cocoapods教程(2016版)
- Mac下cocoapods使用说明(2016版)
- windowIsTranslucent 和windowAnimationStyle冲突
- iOS为汉字添加各种字体
- ZBrush中的材料如何进行渲染和着色
- SparkSQL 通过jdbc连接Mysql(68)
- SparkSQL与Hive的集成实践(69)
- C++产生随机数
- 如何用MathType快速输入公式
- 怎么用MathType输入对数函数
- 怎么输入MathType不等号
- Office密码破解不求人!