dodo平台Python课程习题代码
课内实验01(程序设计概述)
- 【描述】
让我们学习用Python语言向世界问好。"Hello World"示例程序最早出现于1972年,由贝尔实验室成员Brian Kernighan撰写的内部技术文件《Introduction to the Language B》之中。不久同作者于1974年所撰写的《Programming in C: A Tutorial》,也延用这个示例。
一般来说,这是每一种计算机编程语言中最基本、最简单的程序,亦通常是初学者所编写的第一个程序。它还可以用来确定该语言的编译器、程序开发环境,以及运行环境是否已经安装妥当。将"Hello World"作为第一个示范程序,已经成为编程语言学习的传统。
我们在这里继续传统,这也是一种向前辈们致敬的方式之一吧!
【输入】
没有输入。
【输出】
Hello World!
答案:
print("Hello World!")
- 【描述】
编写程序,输出指定的由’*'组成的倒三角图案。(要求:第一行行首无空格,每行行尾无空格)
【输入】
没有输入。
【输出】
* * * *
* * *
* *
*
答案:
print("* * * *\n* * *\n* *\n*")
- 【描述】
编写程序,从键盘输入两个整数,计算并输出这两个整数的和、差、积、商。
【输入】
分行输入两个整数。
【输出】
分行输出两个整数的和、差、积、商。
【输入示例】
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)
- 编写程序,给定一个摄氏温度C,计算对应的华氏温度F。转换的公式如下:
【输入】
在一行中给出一个摄氏温度。
【输出】
在一行中输出对应的华氏温度,精确到小数点后1位。
【输入示例】
100
【输出示例】
212.0
答案:
c = float(input())
f = 9/5*c + 32
print("%.1f" % (f))
- 编写程序,从键盘输入矩形的宽度和高度,计算矩形的面积。结果保留2位小数。
【输入】
分行输入矩形宽度和高度。
【输出】
在一行中输出矩形面积,结果保留2位小数。
【输入示例】
2.5
3.5
【输出示例】
8.75
答案:
x = float(input())
y = float(input())
print("%.2f" % (x * y))
- 【描述】
输入一个圆环的内外半径,计算圆环的面积。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))
- 【描述】
编写程序,计算下列数学表达式的结果并输出,小数点后保留3位。
【输入】
没有输入。
【输出】
输出结果小数点后保留 3 位。
答案:
print("%.3f" % (4*(1-1/3+1/5-1/7+1/9-1/11+1/13)))
- 【描述】
编写程序,计算下列数学表达式的结果并输出,小数点后保留3位。
【输入】
没有输入。
【输出】
输出结果小数点后保留 3 位。
【提示】
**为幂运算符,x ** 0.5为求x的平方根。
答案:
print("%.3f" % (((3**4 + 5 * 6**7)/8)**0.5))
- 【描述】
慧慧有5元钱,她想去买冰棍吃,冰棍的价格各不相同,根据冰棍的价格,计算慧慧最多能买多少根冰棍。
【输入】
一个数,表示一根冰棍的价格,单位是元。
【输出】
一个整数,小明最多能买到的冰棍数。
【输入示例】
1.3
【输出示例】
3
答案:
x = float(input())
y = 5 // x
print(int(y))
- 【描述】
分行输入三个值a、b、c,输出如下公式的值。
【输入】
分行输入三个整数。
【输出】
在一行中输出公式值。
【输入示例】
3
4
5
【输出示例】
-44
答案:
a = int(input())
b = int(input())
c = int(input())
print(b**2 - 4*a*c)
课内实验02(基本程序设计)
- 【描述】
编写程序,从键盘输入两个整数,计算并输出这两个整数的和、平均值、最小值和最大值。平均值保留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)))
- 【描述】
编写程序,从键盘输入两个整数,存放在变量a和b中,并交换a和b中的值。
【输入】
一行中给出整数a和b,其间以空格分隔。
【输出】
一行中输出交换后的整数a和b,其间以空格分隔。
【输入示例】
5 3
【输出示例】
3 5
答案:
a,b = map(int,input().split())
print(b,a)
- 【描述】
编写程序,读入一个在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)
- 【描述】
编写程序,从键盘输入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"))
- 【描述】
编写程序,输入存款(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"))
- 【描述】
将一个大写字母转换为小写字母。
【输入】
输入一个字母。
【输出】
输出对应的小写字母。注意:若输入的是小写字母,则直接输出。
【输入示例】
A
【输出示例】
a
答案:
putin = input()
putout = putin.lower()
print(putout)
- 【描述】
计算a+b。a、b为整数。
【输入】
在一行上输入a、b,其间以空格间隔。
【输出】
输出一行,a+b的值。
【输入示例】
5 3
【输出示例】
8
答案:
a,b = map(int,input().split())
print(a+b)
- 【描述】
编写程序,顺序读入浮点数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))
- 【描述】
输入一个整数和进制,转换成十进制输出。
【输入】
在一行中输入整数和进制。注意,整数可能是十六进制的。
【输出】
在一行中十进制输出结果。
【输入示例】
45,8
【输出示例】
37
import math;
i1,i2 = input().split(",")
i2 = int(i2)
print(int(i1,i2))
- 【描述】
牛牛最近学习了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(分支)
- 【描述】
编写程序,从键盘输入一个整数,检查它是否能同时被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")
- 【描述】
编写程序,键盘输入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"))
- 【描述】
某电网执行阶梯电价,安装一户一表的居民用户电价分为两个阶梯:月用电量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")))
- 【描述】
编写程序,输入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")
- 【描述】
某公司员工的工资计算方法如下:一周内工作时间不超过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)