一筐鸡蛋编程解题C语言,求解:一筐鸡蛋:9个9个拿正好拿完8个8个拿还剩1个

求解:一筐鸡蛋:1个1个拿正好拿完。2个2个拿还剩1个。3个3个拿正好拿完。4个4个拿还剩1个。5个5个拿还剩4个。6个6个拿还剩3个。7个7个拿还剩5个。8个8个拿还剩1个。9个9个拿正好拿完。

问筐里有多少鸡蛋。

答案:这道题有许多种算法。我说其中一种算法吧。

当然符合条件的答案有许多的。但是因为这个筐很小,只要求出最小的符合条件的数值就可以了。如果不考虑已知条件的“7个7个拿还剩5个”的话,答案就是9,即筐里有9个鸡蛋。加上“7个7个拿还剩5个”这个已经条件就变得有点复杂了。

(1)“9个9个拿正好拿完。”证明这个数是9的倍数。必然存在因数9。那么也就同时符合“3个3个拿正好拿完。”这个已经条件了。

(2)“8个8个拿还剩1个。”证明这个数被8整除余1,或者是被8整除余(8+1)。那么因子里面有8,然后再加上9,就符合得数条件了。同时符合已经条件“4个4个拿还剩1个。”

(3)8的倍数乘以9的倍数,得数是偶数,然后再加上9,得数是奇数。也就同时符合已经条件“2个2个拿还剩1个”了。

(4)8的倍数乘以9的倍数,必然能够被6整除,再加上9可以写成“6+3”。所以,得数也就符合已经条件的“6个6个拿还剩3个”了。因为被6整除余3,也能写成被6整除余“6+3”.

(5)“5个5个拿还剩4个”。证明这个数被5整除余4,或者是被5整除余“5+4”.

(6)综合以上五条,得出结果是9*8*5+9=369.然后把369除以7余5,符合已经条件。如果余数不是5的话,就要再考虑“7个7个拿还剩5个”已经条件了。如果这道题首先考虑“7个7个拿还剩5个”的已经条件的话,就比较麻烦了。

所以,筐里有369个鸡蛋。

用数学的方法写出来就是:

设框里有A个鸡蛋。a,b,d,e,f都是正整数,C是非负整数。

(1)“2个2个拿还剩1个”。证明是奇数。则A=2a-1

(2)“9个9个拿正好拿完”。证明是9的倍数,再加上(1)的条件。则A=(2b-1)*9

(3)“5个5个拿还剩4个”。被9整除的数,每5次有一个余数4;每10次有2个余数4;这两个余数是4的数,只有一个奇数,另一个是偶数。证明这个数就是5的偶数倍数加1的得数,再乘以9.即:A=(2*5c+1)*9=(10c+1)*9。由(2)(3)得:2b-1=10c+1,解这个方程,得:b=5c+1。这样(2)(3)就都变成了A=(10c+1)*9了。

(4)“8个8个拿

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值