dodo平台Python课程习题代码

课内实验01(程序设计概述)

  1. 【描述】
    让我们学习用Python语言向世界问好。"Hello World"示例程序最早出现于1972年,由贝尔实验室成员Brian Kernighan撰写的内部技术文件《Introduction to the Language B》之中。不久同作者于1974年所撰写的《Programming in C: A Tutorial》,也延用这个示例。
    一般来说,这是每一种计算机编程语言中最基本、最简单的程序,亦通常是初学者所编写的第一个程序。它还可以用来确定该语言的编译器、程序开发环境,以及运行环境是否已经安装妥当。将"Hello World"作为第一个示范程序,已经成为编程语言学习的传统。
    我们在这里继续传统,这也是一种向前辈们致敬的方式之一吧!
    【输入】
    没有输入。
    【输出】
    Hello World!

答案:

print("Hello World!")
  1. 【描述】
    编写程序,输出指定的由’*'组成的倒三角图案。(要求:第一行行首无空格,每行行尾无空格)
    【输入】
    没有输入。
    【输出】
* * * *
* * *
* *
*

答案:

print("* * * *\n* * *\n* *\n*")
  1. 【描述】
    编写程序,从键盘输入两个整数,计算并输出这两个整数的和、差、积、商。
    【输入】
    分行输入两个整数。
    【输出】
    分行输出两个整数的和、差、积、商。
    【输入示例】
    5
    3
    【输出示例】
    5 + 3 = 8
    5 - 3 = 2
    5 * 3 = 15
    5 / 3 = 1.6666666666666667
    答案:
x = int(input())
y = int(input())
print(x,"+",y,"=",x+y)
print(x,"-",y,"=",x-y)
print(x,"*",y,"=",x*y)
print(x,"/",y,"=",x/y)
  1. 编写程序,给定一个摄氏温度C,计算对应的华氏温度F。转换的公式如下:

    【输入】
    在一行中给出一个摄氏温度。
    【输出】
    在一行中输出对应的华氏温度,精确到小数点后1位。
    【输入示例】
    100
    【输出示例】
    212.0

答案:

c = float(input())
f = 9/5*c + 32
print("%.1f" % (f))
  1. 编写程序,从键盘输入矩形的宽度和高度,计算矩形的面积。结果保留2位小数。
    【输入】
    分行输入矩形宽度和高度。
    【输出】
    在一行中输出矩形面积,结果保留2位小数。
    【输入示例】
    2.5
    3.5
    【输出示例】
    8.75

答案:

x = float(input())
y = float(input())
print("%.2f" % (x * y))
  1. 【描述】
    输入一个圆环的内外半径,计算圆环的面积。inside和outside分别表示圆环的内外半径,题目保证外半径大于内半径。
    假设π为3.14159。
    【输入】
    输入圆环的外半径和内半径。
    【输出】
    输出对应的圆环面积,结果保留2位小数。
    【输入示例】
    3.5
    2.5
    【输出示例】
    18.85

答案:

pi = 3.14159
x = float(input())
y = float(input())
print("%.2f" % ((x**2 - y**2)*pi))
  1. 【描述】
    编写程序,计算下列数学表达式的结果并输出,小数点后保留3位。

    【输入】
    没有输入。
    【输出】
    输出结果小数点后保留 3 位。

答案:

print("%.3f" % (4*(1-1/3+1/5-1/7+1/9-1/11+1/13)))
  1. 【描述】
    编写程序,计算下列数学表达式的结果并输出,小数点后保留3位。

    【输入】
    没有输入。
    【输出】
    输出结果小数点后保留 3 位。
    【提示】
    **为幂运算符,x ** 0.5为求x的平方根。

答案:

print("%.3f" % (((3**4 + 5 * 6**7)/8)**0.5))
  1. 【描述】
    慧慧有5元钱,她想去买冰棍吃,冰棍的价格各不相同,根据冰棍的价格,计算慧慧最多能买多少根冰棍。
    【输入】
    一个数,表示一根冰棍的价格,单位是元。
    【输出】
    一个整数,小明最多能买到的冰棍数。
    【输入示例】
    1.3
    【输出示例】
    3

答案:

x = float(input())
y = 5 // x
print(int(y))
  1. 【描述】
    分行输入三个值a、b、c,输出如下公式的值。

    【输入】
    分行输入三个整数。
    【输出】
    在一行中输出公式值。
    【输入示例】
    3
    4
    5
    【输出示例】
    -44

答案:

a = int(input())
b = int(input())
c = int(input())
print(b**2 - 4*a*c)

课内实验02(基本程序设计)

  1. 【描述】
    编写程序,从键盘输入两个整数,计算并输出这两个整数的和、平均值、最小值和最大值。平均值保留2位小数。
    【输入】
    分行输入两个整数。
    【输出】
    分行输出两个整数的和、平均值、最小值和最大值。平均值保留2位小数。
    【输入示例】
    5
    4
    【输出示例】
    9
    4.50
    4
    5

答案:

a = float(input())
b = float(input())
print(int(a+b))
print(format((a+b)/2,".2f"))
print(int(min(a,b)))
print(int(max(a,b)))
  1. 【描述】
    编写程序,从键盘输入两个整数,存放在变量a和b中,并交换a和b中的值。
    【输入】
    一行中给出整数a和b,其间以空格分隔。
    【输出】
    一行中输出交换后的整数a和b,其间以空格分隔。
    【输入示例】
    5 3
    【输出示例】
    3 5

答案:

a,b = map(int,input().split())
print(b,a)
  1. 【描述】
    编写程序,读入一个在100和999之间的整数,然后输出按位逆序后的数。当输入的整数含有结尾的0时,输出不应带有前导的0。比如输入100,输出应该是1。
    【输入】
    在一行中给出一个在100和999之间的整数。
    【输出】
    在一行中输出按位逆序后的数。
    【输入示例】
    123
    【输出示例】
    321

答案:

a = int(input())
ge = a % 10
shi = a // 10 % 10
bai = a // 100
if(ge == 0):
    print(shi * 10 + bai)
else:
    print(ge * 100 + shi * 10 + bai)
  1. 【描述】
    编写程序,从键盘输入a,计算表达式

的值,a≠-1。结果保留2位小数。
【输入】
在一行中输入a的值。
【输出】
在一行中输出表达式的值,结果保留2位小数。
【输入示例】
2
【输出示例】
2.26

答案:

import math;
a = float(input())
b = (math.cos(2 * math.pi * 50 /360) + math.sqrt(37.5))/(a+1)
print(format(b,".2f"))
  1. 【描述】
    编写程序,输入存款(money)、存期(year)和年利率(rate),计算存款到期时的税前利息(interest)。结果保留2位小数。公式如下:

    【输入】
    分行输入存款(money)、存期(year)和年利率(rate)。
    【输出】
    在一行中输出存款到期时的税前利息(interest),结果保留2位小数。
    【输入示例】
    10000
    3
    0.025
    【输出示例】
    768.91

答案:

import math;
money = int(input())
year = int(input())
rate = float(input())
interest = money * pow((1+rate),year) - money
print(format(interest,".2f"))
  1. 【描述】
    将一个大写字母转换为小写字母。
    【输入】
    输入一个字母。
    【输出】
    输出对应的小写字母。注意:若输入的是小写字母,则直接输出。
    【输入示例】
    A
    【输出示例】
    a

答案:

putin = input()
putout = putin.lower()
print(putout)
  1. 【描述】
    计算a+b。a、b为整数。
    【输入】
    在一行上输入a、b,其间以空格间隔。
    【输出】
    输出一行,a+b的值。
    【输入示例】
    5 3
    【输出示例】
    8

答案:

a,b = map(int,input().split())
print(a+b)
  1. 【描述】
    编写程序,顺序读入浮点数1、整数、字符、浮点数2,再按照字符、整数、浮点数1、浮点数2的顺序输出。
    【输入】
    在一行中顺序给出浮点数1、整数、字符、浮点数2,其间以空格分隔。
    【输出】
    在一行中按照字符、整数、浮点数1、浮点数2的顺序输出,其中浮点数保留小数点后2位。
    【输入示例】
    2.12 88 c 4.7
    【输出示例】
    c 88 2.12 4.70

答案:

f1,i1,s1,f2 = input().split()
f1 = float(f1)
f2 = float(f2)
print(s1,i1,"{:.2f}".format(f1),"{:.2f}".format(f2))
  1. 【描述】
    输入一个整数和进制,转换成十进制输出。
    【输入】
    在一行中输入整数和进制。注意,整数可能是十六进制的。
    【输出】
    在一行中十进制输出结果。
    【输入示例】
    45,8
    【输出示例】
    37
import math;
i1,i2 = input().split(",")
i2 = int(i2)
print(int(i1,i2))
  1. 【描述】
    牛牛最近学习了Python语言入门课程,这门课程的总成绩计算方法是:总成绩=作业成绩×20%+小测成绩×30%+期末考试成绩×50%。牛牛想知道,这门课程自己最终能得到多少分?
    【输入】
    在一行中包含三个非负整数,,其间以空格分隔,分别表示牛牛的作业成绩、小测成绩和期末考试成绩,三项成绩满分都是100分。
    【输出】
    一行一个整数,即牛牛这门课程的总成绩,满分也是100分。
    【输入示例】
    60 90 80
    【输出示例】
    79

答案:

import math;
i1,i2,i3 = input().split()
i1 = int(i1)
i2 = int(i2)
i3 = int(i3)
sum = i1 * 0.2 + i2 * 0.3 + i3 * 0.5
print(int(sum))

课内实验03(分支)

  1. 【描述】
    编写程序,从键盘输入一个整数,检查它是否能同时被2和3整除,是否被2或3整除,是否被2或3整除且只被其一整除。
    【输入】
    一行中给出一个整数。
    【输出】
    分行输出检查结果,格式见【输出示例】。
    【输入示例】
    4
    【输出示例】
    4 divisible by 2 and 3? False
    4 divisible by 2 or 3? True
    4 divisible by 2 or 3, but not both? True
a = int(input())
if((a % 2)==0 and (a % 3)==0):
    print(str(a) + " divisible by 2 and 3? True")
else:
    print(str(a) + " divisible by 2 and 3? False")
if((a % 2)==0 or (a % 3)==0):
    print(str(a) + " divisible by 2 or 3? True")
else:
    print(str(a) + " divisible by 2 or 3? False")
if(((a % 2)==0 and (a % 3)==0) == False and ((a % 2)==0 or (a % 3)==0)==True):
    print(str(a) + " divisible by 2 or 3, but not both? True")
else:
    print(str(a) + " divisible by 2 or 3, but not both? False")
  1. 【描述】
    编写程序,键盘输入x,求如下分段函数y的值(结果保留2位小数)。

    【输入】
    在一行中给出给出x的值。
    【输出】
    在一行中输出y的值,结果保留2位小数。
    【输入示例】
    2.5
    【输出示例】
    1.58

答案:

import math
x = float(input())
if(x<0):
    y = x ** 2
elif(x<9):
    y = math.sqrt(x)
else:
    y = x - 6
print(format(y,".2f"))
  1. 【描述】
    某电网执行阶梯电价,安装一户一表的居民用户电价分为两个阶梯:月用电量50千瓦时(含50千瓦时)以内的,电价为0.53元/千瓦时;超过50千瓦时的,超出部分的用电量,电价上调0.05元/千瓦时。请编写程序计算电费。
    【输入】
    在一行中给出某用户的月用电量(单位:千瓦时)。
    【输出】
    在一行中输出该用户应支付的电费(元),结果保留两位小数,格式:cost = 应付电费值;若用电量小于0,则输出“Invalid Value!”。
    【输入示例】
    10
    【输出示例】
    cost = 5.30

答案:

x = float(input())
if(x < 0):
    print("Invalid Value!")
elif(x <= 50):
    y  = x * 0.53
    print("cost = " + str(format(y,".2f")))
else:
    y = 50 * 0.53 + (x-50) * 0.58
    print("cost = " + str(format(y,".2f")))
  1. 【描述】
    编写程序,输入a、b和c,若它们能构成三角形,则输出三角形周长,否则输出"Invalid"。
    【输入】
    一行中给出a、b和c,其间以空格分隔。
    【输出】
    一行中输出三角形周长或"Invalid"。
    【输入示例】
    3 3 3
    【输出示例】
    9.0
    【提示】
    任意两边之和大于第三边,则三条边构成三角形。
    三角形的边长不一定是整数。

答案:

a,b,c = map(float,input().split())
if((a+b)>c and (a+c)>b and (b+c)>a):
    print(a+b+c)
else:
    print("Invalid")
  1. 【描述】
    某公司员工的工资计算方法如下:一周内工作时间不超过40小时,按正常工作时间计酬;超出40小时的工作时间部分,按正常工作时间报酬的1.5倍计酬。员工按进公司时间分为新职工和老职工,进公司不少于5年的员工为老职工,5年以下的为新职工。新职工的正常工资为30元/小时,老职工的正常工资为50元/小时。请按该计酬方式计算员工的工资。
    【输入】
    在一行中给出2个正整数,分别为某员工入职年数和周工作时间,其间以空格分隔。
    【输出】
    在一行输出该员工的周薪,精确到小数点后2位。
    【输入示例】
    5 40
    【输出实例】
    2000.00

答案:

a,b = map(float,input().split())
if(a >= 5):
    if(b > 40):
        x = 40 * 50 + (b - 40)*75
    else:
        x = b * 50
else:
    if(b > 40):
        x = 40 * 30 + (b - 40)*45
    else:
        x = b * 30
print(format(x,".2f"))



a,b,c = map(int,input().split())
if(a>=b and a>=c):
    if(b>c):
        print(str(c)+"->"+str(b)+"->"+str(a))
    else:
        print(str(b)+"->"+str(c)+"->"+str(a))
elif(b>=a and b>=c):
    if(a>c):
        print(str(c)+"->"+str(a)+"->"+str(b))
    else:
        print(str(a)+"->"+str(c)+"->"+str(b))
elif(c>=a and c>=b):
    if(a>b):
        print(str(b)+"->"+str(a)+"->"+str(c))
    else:
        print(str(a)+"->"+str(b)+"->"+str(c))



import math
a,b=map(float,input().split(","))
if abs(a-2)**2+abs(b-2)**2<=1:
    print(10)
elif abs(a+2)**2+abs(b-2)**2<=1:
    print(10)
elif abs(a-2)**2+abs(b+2)**2<=1:
    print(10)
elif abs(a+2)**2+abs(b+2)**2<=1:
    print(10)
else:
    print(0)