欢迎登陆真网站,您的到来是我们的荣幸。 登陆 注册 忘记密码? ☆设为首页 △加入收藏
欢迎加入真幸福QQ群
电脑知识: 基础知识 网络技术 操作系统 办公软件 电脑维修 电脑安全 windows7 windows8 windows10 服务器教程 平板电脑 视频播放教程 网络应用 互联网 工具软件 浏览器教程 QQ技巧 输入法教程 影视制作 YY教程 wps教程 word教程 Excel教程 PowerPoint
云南西双版纳特产小花糯玉米真空包装


如何绘制常见的EXCEL图形对象
如何套用Excel单元格样式
如何删除EXCEL单元格样式
Excel如何套用现有的表格格式
excel中文日期与英文日期的转换
convert实现不同单位之间的相互转换
widechar单双字节转换函数Asc
vba foreach实例
感叹号!在Excel中的用途
STDEVPA函数实例
excel如何确定几个未知数之和刚好等于给定的总和值
【 来源:网络 】【 点击:1 】 【 发布时间:2017_03_03 08:59:59 】

   一、首先要了解RAND函数

  因为我们要找出的这几个值,根本就不知道到底是哪几个数,而只知道这几个数加起来等于多少,即只知道和值并不知道这几个数是多少。

  因此,必须使用RAND随机数来解决这样的未知问题。

  RAND的用法很简单,方法为:=RAND()

  其取值范围为: (0,1]

  比如:公式 =RAND()*10 该公式得到的值的范围是 (0,10],即大于0而小于等于10之间的可能的任何一个数。

  有了RAND随机数,我们就可以通过给定的总和值,假设是M,推算出第一个数,进而推算出第二个、第三个、第四个……第N个数。

  二、通过总和值M推算出几个未知数的理论

  假设给定一个和值M,根据该和值,要我们推算出三个数,这三个数加起来刚好等于M。

  针对这种条件,我们都明白,这三个数的可能情况,是相当多的,不仅仅是只有一组数字,而是一序列的数据。

  第一个数的推算:理论依据是,该数不能大于M

  所以我们使用公式 Num1=RAND()*M

  下面我们来分析第一个数的取值范围,RAND()的取值范围为(0,1],将其再乘以和值M,那么,第一个数的取值范围就为:(0,M]

  假如第一个数不为M,那么,第二第三个数一定不为0,否则,第二第三个数一定为0

  第二个数的推算:理论依据是,用总和值减去第一个数再除以随机值,

  即:Num2==RAND()*(M-Num1)

  下面分析第二个数的取值范围,大于0而小于等于(M-Num1)

  第三个数的推算:由于是最后一个数了,因此,第三个数 Num3=M-Num1-Num2

  自然,第三个数的取值范围是大于0小于等于(M-Num1-Num2)。

  上述的推理过程中,涉及到的似乎都是未知数,好像没有一个确定的解,但是您别忘了,RAND()和M在具体的应用过程中,完全都是一个具体的数字,因此,所推理出来的第一、第二、第三……第N个数,完全都是一个具体的数字。

  下面,我们给出具体的一个例子,好让大家的思路逐清晰起来。

  假设给定一个总和值M为80,要求通过Excel给出三个数,这三个数加起来刚好等于80,这三个数如何确定。

  这三个数,到底是哪几个,其解有无穷个,也就是说,这三个未知数,有无穷个解,要几个都可以,下面,我们就具体给出公式代码和几组解吧。

  第一个数Num1的公式为:=RAND()*80

  第二个数Num2的公式为:=RAND()*(80-Num1)

  第三个数Num3的公式为:=80-Num1-Num2

  如果你在电子表格中使用填充的办法,可以得出无穷个解。这就是答案,下面,给你贴出几组解吧。

  Num1     Num2     Num3

  15.79585527   0.557776878   63.64636785

  13.65591211   66.0342379    0.309849991

  69.89598614   7.781773093   2.322240765

  78.74553578   0.209932603   1.044531618

  17.43271997   53.86973039   8.697549647

  45.66567338   20.4002065   13.93412011

  三、知识扩展

  ①如何根据总和值得出N个数的公式

  知道M,如何确定N个数,让这N个数的和值刚好为M,这N个数的公式如何推算?

  第一个数:RAND()*M

  第二个数:RAND()*(M-Num1)

  第三个数:RAND()*(M-Num1-Num2)

  第四个数:RAND()*(M-Num1-Num2-Num3)

  ……

  第N-1个数:RAND()*(M-Num1-Num2-Num3-……-Num(n-2))

  第N个数:M-M-Num1-Num2-Num3-……-Num(n-2)-Num(n-1)

  这就是通用的公式。是根据上面的理论与实践推论得出的,经过验证,没有发现错误。

  ②根据M得出几个整数而不是实数

  如果知道M总和值,如何得出几个数,并且,这几个数必须为整数而不是带有小数点的实数?

  借助int()函数可解决此类问题。通用公式如下:

  第一个数:int(RAND()*M)

  第二个数:int(RAND()*(M-Num1))

  第三个数:int(RAND()*(M-Num1-Num2))

  第四个数:int(RAND()*(M-Num1-Num2-Num3))

  ……

  第N-1个数:int(RAND()*(M-Num1-Num2-Num3-……-Num(n-2)))

  第N个数:M-M-Num1-Num2-Num3-……-Num(n-2)-Num(n-1)

本网站由川南居提供技术支持,fkzxf版权所有 浙ICP备12031891号
淳安分站 淳安分站