hnyzcj 发表于 2018-10-27 11:16:55

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为要发放的天数

由此我们得到的编程代码如下:




页: [1]
查看完整版本: makecode编程——金币问题