阿萌又接到一个新的编程任务,要求用Python编写一个计算自然数n阶乘的程序,用于学生利用计算机来计算n的阶乘。
阿萌梳理了一下编程要求,他认为程序需要实现下面这些功能:
程序启动后,程序在Shell窗口输出提示信息“请输入一个自然数,输入quit可退出程序:”,学生输入一个自然数,程序计算自然数的阶乘,并将计算结果输出到Shell窗口。程序再次输出“请输入一个自然数:”,等待学生的下次输入。
程序需要判断学生输入的是否是自然数,如果不是自然数,再判断是否是quit,若是quit退出程序,否则程序输出错误提示“输入错误,请输入一个自然数或者输入quit退出程序”。
阿萌找出了程序的输入与输出:
程序的输入是自然数n,是整数类型,输入的来源是学生在程序运行过程中通过程序输入。程序获取用户的输入可以使用input函数,input函数返回的是字符串,如果需要输入整数,可以使用int函数将字符串转换为整数。
程序的输出是自然数n阶乘的结果,在程序中通过print函数来输出自然数n阶乘的结果。
阿萌根据上面的功能描述,绘制了程序流程图:
在流程图中,计算自然数的阶乘步骤属于子过程,后面会给出这个子过程的流程图。
在流程图中,当用户输入quit时程序退出。在其它情况下,程序要保持运行状态,等待用户的输入。前面已经学习了如何让程序一直保持运行状态,可以使用while循环来保持程序的运行状态。
阿萌准备使用while循环来保持程序的运行状态,循环条件为True,循环体为计算自然数阶乘的代码,在循环体中需要判断学生输入的是否是quit,如果是quit,调用break语句退出循环,程序结束。
购买专栏解锁剩余74%