9247b987-6a13-eb11-8da9-e4434bdf6706.png

今天,加油鸭进阶初中,开始学习阶乘。

阶乘公式:

本质上就是连乘,特别的,

实现思路:通过For循环实现多次相乘,其中每一次的值通过反馈节点,参与下次的相乘。

前面板:

1.添加一个数值输入控件以及一个数值显示控件。

9447b987-6a13-eb11-8da9-e4434bdf6706.png

前面板:

初级版本(不考虑 n 为 0 的情况):

1.“For循环”和“反馈节点”:右键》编程》结构》添加“For循环”和“反馈节点”。

其中循环次数为数值 n,反馈节点初始值设置为 1。

2.计算流程:“For循环”内部的计数器 i 从0开始,所以需要加 1,再进行运算。

i = 0 时,加 1 为 1,开始与反馈节点的初始值 1 相乘,输出 1,将 1 放置在反馈节点。

i = 1 时,加 1 为 2 ,开始与反馈节点第一次结果 1 相乘,输出 2,将 2 放置在反馈节点。

i = n-1 时,加 1 为 n ,开始与反馈节点结果

相乘,输出

这就为后面的完善版本做了铺垫。

二.完善版本(考虑 n 为 0 的情况):

初级版虽然实现了阶乘,但是当 n 为 0 时,输出为 0 ,显示错误。

于是就需要添加条件判定,特殊的,当 n 为 0 时,输出为 1;其他条件使用初级版本内容。

鸭鸭想了很久,花了好大的精力,解决了这个问题。

1.添加条件断定:右键》编程》结构》条件结构,分两种情况。

n > 0:

计数器开始计数, i = 0 时,进入“假”判定,输出 1 ;

i = 1 时,进入“真”判定,输出 1 ;(相当于阶乘公式中的从 1 开始相乘)

以此类推,到 i = n 时,停止。

(比较:

初级版本:当输入 0 时,程序的循环不开启。

完善版本:当输入 0 时,程序的循环运行1次。)

9547b987-6a13-eb11-8da9-e4434bdf6706.png

n > 0:

直接输出 1 。

9647b987-6a13-eb11-8da9-e4434bdf6706.png

虽然累,但还是要加油鸭!

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐