美文网首页
Python:数据类型、输入和条件的练习

Python:数据类型、输入和条件的练习

作者: scratch少儿编程 | 来源:发表于2019-02-21 09:42 被阅读0次

     一些课后的小练习以及小朋友容易出现的问题

         01 bb          

    养成的坏习惯不容易改,先BB几句。

    鲁迅说:辅导小孩学习是一项折寿的任务。周树人说:鲁迅说得对!!

    晃悠、心不在焉等或许是小孩现有身心发展状况所导致的,但是对于所有的辅导小孩学习的家长来说,那不是充满粉尘房间的火星啊,那简直是火把啊~~~~一天培养的好心情儿,几秒钟就完蛋。

    前几天,让小朋友挨章的做练习题,抱着一颗希望小朋友可以独立完成的良好的愿望,无奈现实啪啪啪的打脸。习题对于大人来说,程序代码太简单。但是对于小朋友来说,会有一些问题。所以这篇文章主要还是放在小朋友容易出现的问题,以及如何引导和提高方面。

         03 各种习题

    1F

    章节:运算符号

    这一章节主要是关于运算符号的,并没有把所有的运算符号交给小朋友。只是教了常用的数学运算符号,如加减乘除、求余符号%。

    做了1(a)这道题。对于小朋友而言,在做题之前还需要介绍乘法概念以及百分数概念。几人平分概念倒是勿需讲解。不过,让小朋友列一个完整等式(35.27+35.27*15%)/3的确困难,所以采取的分步计算的方法。难点包括了对小数和百分数的理解。

    第一次做的程序如下:

    d=35.27*0.15z=35.27+dm=z/3print(m)

    有一个潜在的问题是变量的命名,也就是无法从变量名看出该变量的作用(在后面几章的习题中有时还出现了该问题)。

    给小朋友出了一个问题是,如果三个人的花费是30元,那么结果是多少。为了计算结果,小朋友需要把程序中所有35.27改成30。引导小朋友使用一个变量来记录总价,然后在计算式中使用该变量。

    h=30d=h*0.15z=h+dm=z/3print(m)

    有没有可能运行程序后让用户输入总价,然后进行计算呢?

    w=input("input a number")h=float(w)d=h*0.15z=h+dm=z/3print(m)

    2F

    章节:数据类型

    这个章节主要是关于python的内置数据类型以及数据之间的转换的。对于小朋友而言,重点介绍了三个数据类型:整数、小数和字符串,以及相互转换的函数int()、float()和str()。

    做了第1题和第3题。做题之前还是需要介绍一下四舍五入的概念。第1题只需要把int(2.3)和int(2.8)的结果打印出来,就可以发现python没有四舍五入,只是取了整数部分。第3题,实在没有什么好的引导方法,只是最终得出一个结论把要四舍五入的小数加上0.5之后再使用int()函数。

    3F

    章节:input输入

    input函数输出一条消息,并返回一个字符串。小朋友最容易出问题的地方是字符串要使用单引号或者双引号括起来,另一个是input的返回值是字符串,如果需要的是数字的输入的话,需要进行数据类型转换。

    第2题:

    a=input("姓")b=input("名")print("HELLO,"+a+b)

    有没有办法去掉变量a和b呢?跟小朋友讲解了等号的意义,即等号左右两边的内容相等,可以替换。然后变成:

    print("HELLO,"+input("姓")+input("名"))

    第3题:同样的引导思路,尽可能的减少变量的使用。目的是为了强化等号两边的内容可以替换。

    print("面积"+str(int(input("长度"))*int(input("宽度"))))

    第5题:难点是列一个长等式,以及要牢记input获得的输入是字符串,如果要在数学等式中使用,需要进行数据类型转换。

    x=input("5分钱")y=input("2分钱")z=input("1分钱")a=int(x)q=int(y)e=int(z)s=a*5+q*2+e*1print("一共"+str(s)+"分钱")

    4F

    章节:逻辑判断if

    本章节的重点是if可以进行判断、如果两个或以上条件时候,需要使用and或者or把判断条件连接到一起。

    第1题:

    money=int(input("money:"))if money<=10:    pay=money*0.9    print(pay)print("10%")else:    pay=money*0.8    print(pay)print("20%")

    第2题:

    iage=int(input("your age:"))sgender=input("your gender, m is male f is female:")if 10<=iage<=12 and sgender=="f":print("you can")else:print("you can not")

    小朋友希望一直循环判断下去,所以加了while循环。

    while True:    iage=int(input("your age:"))    sgender=input("your gender, m is male f is female:")if 10<=iage<=12 and sgender=="f":print("you can")else:print("you can not")

    继续问小朋友,可不可以一个条件一个条件判断,(又经历了一段时间,鬼知道经历了什么),遂变成

    while True:    iage=int(input("your age:" ))if 10<=iage<=12:        sgender=input("you gender:")if sgender=="f":print("you can")else:print("you can not")else:print("you can not")

    相关文章

      网友评论

          本文标题:Python:数据类型、输入和条件的练习

          本文链接:https://www.haomeiwen.com/subject/bvwlyqtx.html