shshsh_0510 发表于 2012-4-25 08:24:40

可以这样思考:

1) 首先需要确认,乘积的最高位最小只可能是4
2)其次,要使乘积最小,猜测 就应该让三位数的首位是1,二位数的首位是2,(因为二位数每增加1,只会使乘积增加100多,乘积最小的可能性最大),
...
wayne 发表于 2012-4-24 18:40 http://bbs.emath.ac.cn/images/common/back.gif

如何确认最高位是4呢?

shshsh_0510 发表于 2012-4-25 08:28:37

是忘了说明取自然数,小学5年级奥数题目,但是别告诉我你知道答案是等于几哦,它是个错题
creasson 发表于 2012-4-24 13:25 http://bbs.emath.ac.cn/images/common/back.gif
哪错了:Q:
平均数是67,去掉81后变为65,所以81-67=14,即除了81外还有7个数
7个自然数均值为65,如果不要求各不相同的话,那么6个为1,剩下的一个为65*7-6=449

不是这样的么?

sheng_jianguo 发表于 2012-4-25 09:02:03


哪错了:Q:
平均数是67,去掉81后变为65,所以81-67=14,即除了81外还有7个数
7个自然数均值为65,如果不要求各不相同的话,那么6个为1,剩下的一个为65*7-6=449

不是这样的么?
shshsh_0510 发表于 2012-4-25 08:28 http://bbs.emath.ac.cn/images/common/back.gif

我理解他认为错的理由是:满足条件的数组是不确定的,故这组数中最大数也是不确定的(不能得出这组数中最大数)。但如果问:满足条件所有组数中最大数是多少?就没有问题了

mathematica 发表于 2012-4-25 13:45:12


这个还是Mathematica比较擅长吧 Do, Print], {a, 12, 98}, {b, 123, 987}]Shift+Enter立马出结果
hujunhua 发表于 2012-4-23 23:25 http://bbs.emath.ac.cn/images/common/back.gif
可以直接按数字键盘右下角的enter,而不用shift+enter,这样更省力一点,
我通常都是直接按数字键盘右下角的enter

zeroieme 发表于 2012-4-25 14:09:03

首先设单位的乘积如下
AC=j
AD=k
AE=l
BC=m
BD=n
BE=o
列出伪竖式
        C        D        E
                A        B
————————————————
        m        n        o
j        k        l       
————————————————
F        G        H        I

因为2位*3位=4位,所以首位没有进位。再加上令FGHI最小,所以A=1、C=2或A=2、C=1,由此,j=2。
(m+k)
=(2B+D)<-A=1、C=2
或=(B+2D)<-A=2、C=1

想令F=3,(m+k)/10=1……余数

B、D也有可选空间,不见得F必须选4:dizzy:

mathematica 发表于 2012-4-25 14:51:09

{
    for(X=1,9!,
      /*每次给出一个排列*/
      z=numtoperm(9,X);
      /*形成九个数字*/
      a=z;b=z;
      c=z;d=z;e=z;
      f=z;g=z;h=z;i=z;
      /*形成三个数*/
      ab=a*10+b;
      cde=c*100+d*10+e;
      fghi=f*1000+g*100+h*10+i;
      if(ab*cde==fhgi,print(z))
       )
}


上面是我用pari/gp写的程序,我想知道为什么运行没有结果呀??
mathe,你能告诉我吗?
你也可以直接下载文件

mathematica 发表于 2012-4-25 15:16:49

/*大括号似乎是不可少的*/
{
    for(X=1,9!,
      /*每次给出一个排列*/
      z=numtoperm(9,X);
      /*形成九个数字*/
      a=z;b=z;
      c=z;d=z;e=z;
      f=z;g=z;h=z;i=z;
      /*形成三个数*/
      ab=a*10+b;
      cde=c*100+d*10+e;
      fghi=f*1000+g*100+h*10+i;
      /*计算ab*cde与fghi的比较,其中ab*cde左右两边的等号不可以缺少,
      其中原因不知道为什么;
      如果梁个值相等,则输出结果,如果不等则不执行操作*/
      if((ab*cde)==fghi,
         print(z)
          )
       )
}
我自己找到原因了!pari/gp真是他妈的奇怪!!!!!!!!!!!!!!!

mathematica 发表于 2012-4-25 15:24:05

/*大括号似乎是不可少的*/
{
    for(X=1,9!,
      /*每次给出一个排列*/
      z=numtoperm(9,X);
      /*形成九个数字*/
      a=z;b=z;
      c=z;d=z;e=z;
      f=z;g=z;h=z;i=z;
      /*形成三个数*/
      ab=a*10+b;
      cde=c*100+d*10+e;
      fghi=f*1000+g*100+h*10+i;
      /*计算ab*cde与fghi的比较,其中ab*cde左右两边的等号不可以缺少,
      其中原因不知道为什么;
      如果梁个值相等,则输出结果,如果不等则不执行操作*/
      if((ab*cde)==fghi,
         print(z)
          )
       )
}

程序代码以及求解结果见图片!!!!!!!!!!!!!
使用pari/gp运行!

mathematica 发表于 2012-4-25 15:34:54

其中ab*cde左右两边的等号不可以缺少,是括号,不是等号!

mathematica 发表于 2012-4-25 15:48:28

我写的程序几百年后都仍然有人能看明白,真是嫉妒我自己!!!!!!!!!!!!!!!!!!!!!!!!!
页: 1 2 [3] 4 5 6 7
查看完整版本: 小学奥数求助