3512| 0
|
makecode编程——金币问题 |
金币问题: 国王发金币给忠诚的士兵。第一天,士兵收到1枚金币;之后两天(第2,3天)收到2枚金币;之后三天(第4,5,6)每天收到3枚金币,之后四天(第7,8,9,10)每天收到四枚金币……这种工资发放模式会一直延续下去。当连续N天,每天收到N枚金币后,士兵会在N+1天每天收到N+1枚金币。 编程要求: 请编程,计算在K(人工设定)天里,士兵收到多少枚金币(LED输出)。 编程思路: 此题首先大结构上是个循环,发放过程有两种可能,第一种发放金币正好完成一个之后多少天,例如之后三天正好发放到第六天,第二种情况发放5天,没有完成一个完整的周期,但不管什么情况只要满足条件i<=n,(i为发放到的天数,n为实际要发放天数),就可以执行发放。i为循环变量发到多少天,K为每个阶段的发放金币数量例如第一阶段K为1,第二阶段k为2,第三阶段K为3,那么在这个阶段里又是个循环结构,用FOR循环来解决,同时要满足条件i<=N,因为不一定能把这个阶段的金币都发放完全。 S为发放的总金币数 i为实际发放的天数 K为发放到的阶段数 N为要发放的天数 由此我们得到的编程代码如下: |
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed