实现2+22+222+2222+22222这样的过程

本文探讨了如何通过自定义函数和循环结构生成特定的数列,涉及到了多个循环系统的设置与衔接,以及代码展示。作者先尝试自定义函数但遇到问题,然后转向使用笨方法并详细解析了三个循环之间的关系。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

0.这个版本简单

1.逻辑梳理

1.1梳理

像这样的代码,首先得分析大致方向

剖析出来就是 :相同元素的相加。关键是这些数字怎么生成,累加过程暂时不考虑

我首先想到的是自定义代码,不断自己调用自己,生成同一元素的数字,这样的话,但是,话又说回来,自定义代码,输入相同的元素怎么会出现不一样的结果(至少我现在没想到),所以,自定义函数这条路行不通。

自定义不行的话,就用笨方法,在主函数里面实现这个过程。

接下来,确定函数的地方之后,开始想另一个问题,怎么生成

这些数都有一个共同的特点,除了个位数,他们都可以以这种方式生成                                                           10*2  /  100*2+10*2  /  1000*0+100*2+10*2

拉出来,不就是10,100 1000 10000这些数逐步出现,在*2。

这个过程定为对10 100 1000 10000的循环生成,在*2即可。但是随即新的问题出现,每次只是生成20 200 2000 200000这样的数,跟题目不符啊。

将这些循环生成的整数,相加即可,这样就会得到题目中的数字了,也就是在循环生成10 100 的同时,还要将这些*2 循环 相加,所以目前有两个循环系统了。(20 220 2220 22220)

最后是将由两个循环系统得出来的数字  经又一次循环+2后 相加即可,(22 +222+2222+22222)

1.2总结

接下来是看循环之间的联系。

一共三个循环。最里面的是用来控制生成最大的那位数的,中间的一层是用来生成题目数字但是缺少个位数的,最外面一层是用来生成中间数+2后相加的。

1.3重点

三个循环之间的联系是最重要的,一定要确定三个之间的衔接关系。

2.代码展示

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值