在线时间1071 小时经验值5263 最后登录注册时间帖子阅读权限100UID1444798
该用户从未签到
G币213993 最后登录注册时间
你昨晚不是问了我么
不是已经知道了么
再来发伪装贴蹭积分
小心老娘灭了你!!!
小崔!!!!
小翠!!!!
在线时间0 小时经验值2651 最后登录注册时间帖子阅读权限100UID
博士, 积分 2651, 距离下一级还需 849 积分
TA的每日心情擦汗 11:13签到天数: 112 天[LV.6]常住居民II
G币1803 最后登录注册时间
支持斑竹灭了哦她
让她叫“亚美爹”
在线时间2 小时经验值1739 最后登录注册时间帖子阅读权限90UID6816046
硕士, 积分 1739, 距离下一级还需 761 积分
TA的每日心情擦汗 14:54签到天数: 14 天[LV.3]偶尔看看II
G币75429 最后登录注册时间
tonysrockson 发表于
支持斑竹灭了哦她
让她叫“亚美爹”
你个帮腔的...
在线时间0 小时经验值2651 最后登录注册时间帖子阅读权限100UID
博士, 积分 2651, 距离下一级还需 849 积分
TA的每日心情擦汗 11:13签到天数: 112 天[LV.6]常住居民II
G币1803 最后登录注册时间
movelove12 发表于
你个帮腔的...
斑竹威武,哇哈哈
在线时间2 小时经验值1739 最后登录注册时间帖子阅读权限90UID6816046
硕士, 积分 1739, 距离下一级还需 761 积分
TA的每日心情擦汗 14:54签到天数: 14 天[LV.3]偶尔看看II
G币75429 最后登录注册时间
tonysrockson 发表于
斑竹威武,哇哈哈
来吧...就 可我这个贴 霍霍... 咱俩 互相水吧...
在线时间613 小时经验值1573 最后登录注册时间帖子阅读权限80UID939812
研究生, 积分 1573, 距离下一级还需 127 积分
TA的每日心情奋斗 12:39签到天数: 19 天[LV.4]偶尔看看III
G币4485 最后登录注册时间
君墨 发表于
你昨晚不是问了我么
不是已经知道了么
狂顶版主mm
Powered by为了账号安全,请及时绑定邮箱和手机
有点问题,求教
HTML&&html &&head&&meta http-equiv="Content-Type" content="text/ charset=utf-8" /&&title&系好安全带,准备启航&/title&&script type="text/javascript"&
//通过javascript的日期对象来得到当前的日期,并输出。
var currentDate = new Date();
var weekday = ["星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"];
document.write(
currentDate.getFullYear() + "年" +
(currentDate.getMonth() + 1) + "月" +
currentDate.getDate() + "日" + " " +
weekday[currentDate.getDay()]
//成绩是一长窜的字符串不好处理,找规律后分割放到数组里更好操作哦
var sorceStr = "小明:87;小花:81;小红:97;小天:76;小张:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76";
var sourceArr = sorceStr.split(";");
//document.write(sourceArr);//test
//从数组中将成绩撮出来,然后求和取整,并输出。
var score = new Array();
var sum = 0;
for (var i = 0; i & sourceArr. i ++) {
sum += parseInt(sourceArr[i].substr(sourceArr[i].indexOf(":")+1));
//document.write("&br&" + sum);//test
document.write("--班级总分为:" + sum);
document.write(",班级平均分为(保留整数):" + Math.round(sum/sourceArr.length))&/script&&/head&&body&&/body&可以解释一下从最后中文注释到for语句那里的意思吗,我看不懂
写下你的评论...
Copyright (C)
All Rights Reserved | 京ICP备 号-2数学白痴求教
ABCD*9=DCBA,... | 问答 | 问答 | 果壳网 科技有意思
数学白痴求教
ABCD*9=DCBA,求ABCD各是什么数字?
听说是三年级数学题,但我就是没想出来,想知道思路是怎样的?
+ 加入我的果篮
社科硕士,博物馆爱好者,果壳作者
这是一道逻辑推理题,不是数学题。1)四位数字*9,还是四位,那么肯定首位A=1,因此D=9无误了2)1**9 x 9 还是四位,那么第二位B只能是0或者1。12*9 x 9无论如何都是五位数了。因为A已经是1了所以不可能是1,那么只能是0了。3)10*9 x 9 = 9*01,第三位的数字与9的乘积的个位数,加9x9的进位8,必须是20,才会有进位为0的情况。因此8符合。4)1089 x 9 = 9801,验算正确。A=1 B=8 C=0 D=9如果三年级小学生学过多位数乘法,从数学上这道题并没有任何“超纲”的地方。重要的是培养孩子的思维能力,尤其是逻辑推理能力。这是区别开聪明人和一般人的最重要的地方之一。如果你不想让你的小孩子以后说出“数学滚出高考”这句话,多做点这种题,只有好处,没有坏处。
植物分子生物学博士
四位数乘以9还是四位数,说明千位一定是1,不然结果就成5位数了,所以A一定是1,进而知道D一定是9那么,百位上的数字,也就是B只能是0或1,不然和9乘依然会进位,使得结果成为5位数。那么用0和1试,可以知道B只能是0,不能是1。那么也容易知道C为8。即ABCD是1089。
我给出一个小学三年级标准解法:ABCD×9=DCBA我这里假定ABCD四个数字可能互相相同。我这里首先假设A≠0。不然可以用小学方法得到另一个解,即A=B=C=D=0,这个很容易算出来,我们也不需要再提。好了,因为9,大于1111的一切整数乘以9都不会是四位数,所以1000≤ABCD≤1111所以A=1。A×9=D,所以D=9。原问题变为1BC9×9=9CB1。从前面的不等式我们可以知道,B要么是0,要么是1。分类讨论。假设B=1,那么11C9×9=9C11。百位上的乘法运算是1×9=9,所以即使不考虑十位乘后的进位,C也至少是9,但是比9大就往千位进位了,千位就变了,所以C就是9,ABCD=,不成立。(看不懂上一行怎么办?没关系,这一步还有解法2。继续假设B=1,11C9≤1111,那C只能等于0,1≠9011,这个需要简单算一下,算到十位才能发现不对,比前一种方法略麻烦。)由此排除B=1的可能,B=0。有勇气思考这道题的***开始思考以后想完成前面这几步应该不需要超过15s吧?哪怕你是心算用的最麻烦的第二种方法。原问题变为10C9×9=9C01。接下来可以试数,乘法口诀背得熟的很快就能试出来,不考虑验算,对***来说这道题心算耗时怎么也不能超过半分钟的。但是其实也有更正的方法。我们开始很正常地解10C9×9好了。个位9×9=81,剩下一个1,前面的8进到十位,十位数字就是(9×C的个位数+8),我们预先知道,乘出来的数十位应该是0,那么9×C的个位数是2,C只能是8。最后顺着上一步就验算了,1,没问题。我说的很麻烦,因为用文字描述乘法算式是很麻烦的事情。但是如果你手上有一支笔,拿着字母做这个乘法,那么就会看到这个小学方法其实非常简单。我个人认为这道题不错,一方面挺有趣,另一方面加深小学生对乘式的理解。如果乘式上不再是熟悉的数字,而是不确定的字母,你还敢做么?再稍微勇敢一点儿,就有令你欣喜的突破了!当然了,作为***,还有一种更普适的办法:9(1009+10C)=C01+100C10C=80C=8这个已经不是小学三年级可以驾驭的了,但是对成年人来说,解这个一元一次方程也没太大难度吧?初中以上文化程度的健康***不会解这个题只可能是被对教育的刻板印象吓到了。
Gentoo 用户
我也来一个程序员的版本。在我们程序员思维下,整数的变量能表示的存储范围是有限的,没有正负号的情况下,进位的东西统统都要咔嚓掉。再来个十六进制版的:============================================================补充:其实,如果要老老实实来做这道题的话,用 python 也有只需要一行的解法:
有了Mathematica,我就懒得想了,直接上图
文科狗给楼上跪了。
我用excel三列,第一列从,第二列为第一列的逆写,公式为=MID(A3,4,1)&MID(A3,3,1)&MID(A3,2,1)&MID(A3,1,1)第三列为第一列*9减第二列,公式为=B2-A2*9然后筛选第三列数字为0时,就是;0完毕
这是一道典型的数学题目: [ABCD] x 9 = [DCBA]=& [ABCD] x 10 = [DCBA] + [ABCD] =& [ABCD0] = [DCBA] + [ABCD] =& A + D = 10 / A + D = 0 (舍)& A = 1& D + A = [AB] & B + C + 1 = D & C + B = C / C + B + 1 = C (舍)=& A = 1 D = 9 B = 0 C = 8=& [ABCD] = 1089 #只能找到下划线,所以就用下划线代替bar了。额,夸张了,我连下划线都没有找到,悲催。我用[]吧。体现了化归的数学思想以及算数基本运算法则。原帖在 这里
换成X86 32位MASMmov esi, 0mov ebx, 0mov ecx, 10000/9next:add esi, 1mov eax, esiaaaror eax, 8add eax, 0aaaror eax, 8add eax, 0aaaror eax, 8add eax, 0aaaror eax, 8bswap eaxmov edx, eaxadd ebx, 9mov eax, ebxaaaadd eax, 0ror eax, 8aaaror eax, 8add eax, 0aaaror eax, 8add eax, 0aaaror eax, 8cmp eax, edxjz printloop next
飞岛国语言专家
是时候展示octave的____了find(str2num(fliplr(num2str((1:1111)'*9, '%04d'))) == (1:1111)')
MATLAB怎么能够自甘堕落。。。再来个扩展版的
ABCD * 9 = DCBA =& ABCD + DCBA = ABCD0 =&A + D = 10A * 9 = DC + B + 1 = DB + C = CA = 1, D = 9 =&C + B = 8 =&B = 0,C = 8ABCD = 1089
A=1,D=9是人都知道啦→_→B只能是0因为如果是1就成5位数了(1109除外但显然它不符合)然后就挑吧~虽然只有一个1089【
二到不治而亡
csharp来报道///================================================ int A, B, C, D, abcd, for (int i = 1000; i & 10000; i++) { abcd = A = Convert.ToInt16((abcd.ToString().ToArray()[0]).ToString()); B = Convert.ToInt16((abcd.ToString().ToArray()[1]).ToString()); C = Convert.ToInt16((abcd.ToString().ToArray()[2]).ToString()); D = Convert.ToInt16((abcd.ToString().ToArray()[3]).ToString()); dcba = D * 1000 + C * 100 + B * 10 + A; if (abcd * 9 == dcba) label4.Text = "ABCD = " + abcd.ToString(); }///================================================难看的一塌糊涂,勉强能用,优雅什么的,去死
软件工程师一枚 完美主义
9----- DCBA因为是四位数,所以A≠0且能乘9还不进位的只能是1于是B也出来了,因为B≠A,就是说B≠1又∵1以上的数字乘9都会进位∴必然是0又∵我们有了A=1 B=0∴无论如何D一定是9(1*9=9)于是我们有 10?9×
9----- 9?01最后能得到1的只能是9×9=81 进8而十位必须是0,于是只能是乘9等于?2的数,就是说是8×9=72于是我们有8+2=10连同之前的70,就进位8又因为B是0,所以0×9=0,连同进位的8,就是8.这个阶段不进位最后1×9=9最终推出并验证了ABCD=1089
在10进制下且A!=0的前提下讨论(看到ABCD*9的第一反应真的是十六进制啊)由ABCD*10=ABCD+DCBA得A=(D+A)/10&=1,故A=1,D=A*9%10=9又DCBA%9==0,有D+B+C+A=18或27,即B+C=8或17千位上B=(A+D+(B+C)/10)%10=(B+C)/10&=1,故B=0,C=8。若B=1则(B+C)&10,即B+C=17,C=17-1=16或者这么考虑十位上显然(C+B+A)%10=D,故C+B=8,不进位,百位上B+C=C,显然B=0,C=8顺便蛋疼写了个纯C版本,输入部分自己补N是位数,Sys是进制,C是乘数unsigned long *i;unsigned long Sys,N,Left,Right,Temp,C,k;//N=4;Sys=10;C=9;do{if(Sys&2)printf("Sys&2");else if(C&2)printf("C=0 or C=1");else if(N&1)printf("N&1");else if(C&=Sys)printf("c&=sys");else{i=calloc(N,sizeof(long));i[0]=1;i[N-1]=1;do{Left=0;Right=0;Temp=1;for(k=0;k&N;k++){Left+=Temp*i[k];Right+=Temp*i[N-k-1];Temp*=S}if(Left*C==Right){printf("%lu\t%lu\t%lu\nDec:\n",C,Sys,N);for(k=0;k&N;k++)printf("%lu\t",i[N-k-1]);printf("\n\n");}i[0]++;for(k=0;k&N-1;k++)if(Sys==i[k]){i[k]-=Si[k+1]++;}}while((i[N-1]*C&Sys)&&(i[N-1]!=Sys));}C++;}while(0);
for a,b,c,d=0 to 9if (a*1000+b*100+c*10+d)*9=d*1000+c*100+b*10+a thenmsgbox a,b,c,dnext*4语法有问题,阅读者请自行脑补为正确的程序.
楼上各种能人啊,膜拜之!
Winter is coming!
临床医学学士
我的思路:1、根据题意,A、B、C、D是四个不相同的数字。2、除了0和1以外的任何整数乘以9都会出现进位,因此第一位A只能是1或03、已知9x9=81,0X9=0,因此A=0则D必须也是0,与题意不符,因此A=14、 根据可知,D=9,即ABCD=1xx9,DCBA=9xx15、如B大于1,则必然出现Bx9大于10,出现进位,则不可能保持9xx1+1000为四位数,可知B=1或B=0,因已知A不等于B,因此B=0,则ABCD=10x9,DCBA=9x01。6、Dx9=81,可知Cx9=?2时C0x9+Dx9=?01,当C=8时,8x9=72,符合题意,可知ABCD=1089,DCBA=9801
(b+10c +d) * 9 = 1000d + 100c +10b +a化简得b = 991d + 10c由于a不为0,左边&= 8999 *1 + 890*0= 8999右边&=991 *9 + 10*8 = 8999
ABCD*9=DCBA说明ABCD*10=ABCD0即ABCD+DCBA=ABCD0,可知:A+D=0、A=1,从而:D=9;又因为:B+C=C、B+C+1=D,即:C+1=D=9故可推出:C=8、B=0;综上:ABCD=1089。
楼上用pythonnnn的自重= =你觉得小学生能用得了吗。。。说一个很直接的解法吧。。我思维拐弯没那么快,首先想到的是列方程(B+10C+D)*9=(C+10B+A)很直接,是不是?然后……试数吧……找到一组小于10的自然数解就好了= =不过,先别急着拍砖,试数是有方法的,不会很盲目。如下:化简方程后,四位数的关系是 B-10C-991D=0试数是有规律的……A在千位,不能是0,C、D小于10,如果A&1,则D必定大于9,所以只能是A=1现在是C-991D=0取D=9,得80+890B-10C=0D不能更小,否则C一定大于10然后为了保证C小于10,显然B=0,所以C=8..***是ABCD=1089…毫无技巧的一般方法,我一定适合当工程师而不是数学家………
本题转化为ABCD0-ABCD=DCBA。五位数-四位数=四位数,万位数A为1。小学知识。然后看个位,得出D=9,于是转化为1BC90-1BC9=9CB1,十位数得出8-C=B;百位数得出C-B=C,于是B=0,C=8,所以ABCD=1089。 - 9分钟前本题将ABCD*9=DCBA转化为ABCD0-ABCD=DCBA,就变成类似于比九宫格简单得很多很多的填表格方法。关键是让学生有发散思维。多好的题!微博上 提出话题的时候,我还给予回复:亮点不在***。亮点在于你碰到不懂问题的时候,你所采取的策略、努力:或放弃?或努力?或抱怨?亮点还在于家长碰到此类问题的态度!美国数学从高中开始超越中国,因为他们培养的是自己去寻找规律创造公式的能力。而我们习惯于给你范围给你公式,然后你规矩做题。有用吗?
A=B=C=D=0 or A=1,B=0,C=8,D=9
我也无聊的算了算,不知道有谁看得懂么。
这种算法可视化还不错。可爱的C,伟大的C-Free~~~
的思路我用C做了一个ABCD*i=DCBA (i=2,3,,,9) 的通解...(i=1***有点多...)结论,ABCD*i=DCBA只有i为9或4时才有非零解……
我来个EXCEL版的=LARGE(IF(ROW()*9=((--MID(ROW(),4,1))*1000+(--MID(ROW(),3,1))*100+(--MID(ROW(),2,1))*10+(--MID(ROW(),1,1))*1),ROW(),0),1)输入上面的公式之后,需要摁住CTRL+SHIFT再摁回车确认,公式里前后像我图片里那样显示一个大括号才正确哦另,上面的公式只能看到最大的那个结果,可以把最后一个参数换成2,就可以看到结果是0,表示没有另一个解
(mac/linux 可以直接运行)#! /usr/bin/perlfor(){$n=$_*9;if ((substr $_,0,1)==(substr $n,3,1) and(substr $_,1,1)==(substr $n,2,1) and(substr $_,2,1)==(substr $n,1,1) and(substr $_,3,1)==(substr $n,0,1) and($n&=9999)){print "$_";last}}很普通的解法(好久好久以后才发现可以这么写
CS in progress
是时候展示 Ruby 的优雅了!运行结果 1089
后回答问题,你也可以用以下帐号直接登录
(C)2016果壳网&&&&京ICP证100430号&&&&京网文[-239号&&&&新出发京零字东150005号