excel如何确定几个未知数之和刚好等于给定的总和值

2016-12-22 14:10:48 来源:三联教程作者:3lian10 人气: 次阅读 320 条评论

  一、首先要了解RAND函数  因为我们要找出的这几个值,根本就不知道到底是哪几个数,而只知道这几个数加起来等于多少,即只知道和值并不知道这几个数是多少。  因此,必须使用RAND随机数来解决这样的未知问题。  R...

  一、首先要了解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)

您可能感兴趣的文章

相关文章

  • Excel如何套用现有的表格格式

    Excel如何套用现有的表格格式

      在Excel2010中,内置了大量的工作表格式,这些格式中预设了数字、字体、对齐方式、边界、模式、列宽和行高等属性,套用这些格式,既可以美化工作表,又可以大大提高工作效率。  以上一例效果为例,选择需要套用表格格式...

    Excel教程 2016-12-22
  • 在Excel2010中设置图片属性

    在Excel2010中设置图片属性

      在Excel2010中设置图片属性,可以改变工作表中图片的颜色、对比度和亮度等。  打开上一例效果,选择图片,切换至“格式”面板,在“调整”选项板中单击“更正”按钮,在弹出的列表框中设...

    Excel教程 2016-12-22
  • 巧用WPS2012设置Excel下拉列表

    巧用WPS2012设置Excel下拉列表

      日常的办公中,在向表格填入数据时,合理运用下拉列表可以大大节省数据录入时间,提高正确性,不但方便自己也方便了别人。那么如何才能快速、有效的使用下拉列表呢?下面笔者就给大家介绍一下运用WPSoffice2012表格工...

    Excel教程 2016-12-22
  • 《Excel三国杀》双武将暴力组合搭配一览 Excel三国杀攻略

    《Excel三国杀》双武将暴力组合搭配一览 Excel三国杀攻略

      《Excel三国杀》是马蜂窝工作室在MSofficeExcel平台上设计的一款单机版三国杀游戏,游戏以其单机游戏的超好体验以及高智能的AI设计赢得了玩家们的高度评价。相信对于热爱三国杀的童鞋来说,其中在Excel杀的技巧中还...

    Excel教程 2016-12-21
  • Excel2010函数讲解--COUNTIFS

    Excel2010函数讲解--COUNTIFS

      ①首先我们打开Excel,我是跟大家演示,所以我随便输入了一些数据来举例。  ②下面,我们要计算出报名人数超过20的美国城市数目,这当然要用到COUNTIFS了。  ③在单元格输入了函数之后,系统会提示出函数参数,criteria...

    Excel教程 2016-11-21
  • 隐藏地Excel工作表 你别想取消

    隐藏地Excel工作表 你别想取消

      在Excel中,通常隐藏工作表的操作方法如下:  把需要隐藏的工作表激活成当前工作表,执行一下“格式→工作表→隐藏”命令,即可将其隐藏起来。  这样隐藏的工作表,通过执行“格式→工作...

    Excel教程 2016-11-21