【摘要:重点学习input函数,input函数获取用户的输入。】
1、求三角形的面积
编写一个程序,实现求三角形的面积。在编写代码之前,首先绘制求三角形面积的程序流程图,有了流程图,就可以按照流程图给出的步骤来编写代码。

在打开的Shell窗口,按照流程图步骤编写代码。

2、 如何获得用户输入的底和高?
前面编写的这个案例程序,三角形的底和高是直接在代码内赋值的,因此程序只能计算在代码内已赋值的三角形的面积,这显然是不妥的。程序应该能计算任意三角形的面积。要想程序能够计算任意三角形的面积,三角形底和高的值就需要从外部获得输入。
如何获得用户输入的底和高呢?在前面的课程中,我们学会了如何使用Python提供的print函数输出内容,Python提供的函数也称为内置函数,在后面的课程中,Python提供的函数都称为内置函数。
同样Python的内置函数input函数用来获取用户输入的内容,通过input函数,程序可以获取用户输入的内容。

input是函数的名称,obj是函数传入的参数,该参数不是必须的。参数是字符串类型,参数可以是需要用户输入的提示信息。例如:“请输入一个整数:”、“请输入三角形的底:”、“请输入你所在的城市名称:”等等。如果用户对输入的内容非常清楚,也可以省略参数。
案例02演示了如何使用input函数获取用户的输入。

案例02使用Python的内置函数input,要求用户输入所在的城市,input函数执行后,会等待用户的输入,用户输入完成,input函数将用户的输入以字符串方式返回。
3、 获取用户输入的整数
在程序运行过程中,有时也需要获取用户输入的数值。例如在计算三角形面积的程序中,就需要获取用户输入的三角形的底和高,底和高都是数值,数值又分为整数和小数。
案例03演示了如何获取用户输入的整数。

案例03使用input函数将用户的输入赋值给num,再通过int函数将变量num的内容转换为整数,然后赋值给num,此时num存储的是整数。
需要注意的是,在转换之前需要检测num是否是数字型字符串,因为程序不能保障用户输入的是正确的内容。
案例03的代码,也可以这样写:

上面的代码使用int函数,将input函数返回的字符串转换为整数。
4、 获取用户输入的小数
使用input函数获取用户输入的小数和整数基本相同,不同的是要使用float函数将用户的输入转换为浮点数。

在案例04中,使用float函数将用户的输入转换为浮点数。
案例03、04的代码让程序与用户构成了一个简单的交互,在这里我们可以把用户理解为程序的使用者。程序首先提示用户输入三角形的底,输入的要求是整数,然后程序等待用户的输入,用户输入完成后,程序将用户的输入赋值给变量a,并输出变量a的内容以响应用户输入完成。

5、 求三角形面积程序的改进
现在改进计算三角形面积的程序步骤,增加与用户的交互能力,用户输入三角形的底和高,程序根据用户输入的底和高来计算三角形的面积。
在前面计算三角形面积的程序中,没有用户交互部分,因此需要修改计算三角形面积的程序流程图,增加与用户的交互部分。

同前面计算三角形面积算法流程图不同的是,算法开始后的第一个步骤使用了流程图的输入/输出符号,表示变量a和h由用户输入并赋值。
在Shell窗口编写代码。
案例05代码会要求用户输入三角形的底和高,并分别赋值给变量a和h,在计算三角形面积时,将变量a和h的内容使用int函数转换为整数。
案例05代码没有对用户的输入进行验证,如果用户输入的不是整数,程序会报错。
6、 上机操作
编写求圆面积的程序,程序要求如下:
(1)圆的半径由用户输入,半径为小数类型;
(2)绘制程序流程图;
(3)按照程序流程图,编写代码;