第一题:
Square Root
题目描述
我们会输入一个数字 x1,你需要编写程序,求解其平方根并返回求解后的值。本题只考虑平方根存在的情形。 注意,我们希望所有以浮点数输出的值都能够保留两位小数
输入格式
一个数字,数字类型为整数或浮点数 。
输出格式
一个浮点数,代表该数的平方根值,结果保留两位小数。
输入样例-1
9
输出样例-1
3.00
import ast
import math
x1 = ast.literal_eval(input())
print('%.2f' %math.sqrt(float(x1)))#先将x1变成浮点数,然后使用math.sqrt()求平方根
第二题:
Square
题目描述
我们会输入一个数字x1,你需要编写程序,求解这个数字的平方。
输入格式
一个数字,数字类型为整型数或浮点型数。
输出格式
一个浮点数,保留两位小数。
输入样例-1
10
输出样例-1
100.00
输入样例-2
3.14
输出样例-2
9.86
import ast
x1 = ast.literal_eval(input())
print('%.2f' %pow(float(x1), 2)) #需要将x转成浮点数类型,然后使用pow函数2代表平方
第三题
Odd number
题目描述
我们会输入一个整型数 x1,你需要编写程序,判断这些数是奇数还是偶数,并且返回相应格式的内容。
输入格式
一个int整型数。
输出格式
若是奇数则输出True,否则输出False。
输入样例-1
8
输出样例-1
False
输入样例-2
3
输出样例-2
True
import ast
import math
x1 = ast.literal_eval(input())
def isO(x1):
if x1 % 2 == 0:#是偶数对2取模一定是0
print("False")
else:
print("True")
isO(x1)
第四题:
Range
题目描述
我们会输入两个数字x1和x2,你需要编写程序,求解其上界与下界并返回相应的值。
输入格式
输入两个int整型数,用逗号分隔。
输出格式
分别输出下界和上界,中间以空格隔开,具体见输出样例。
输入样例-1
19,12
输出样例-1
12 19
输入样例-2
10,20
输出样例-2
10 20
import ast
x1, x2 = ast.literal_eval(input())
# 现在程序中有变量x1和x2
if x1 >= x2:
print(x2, x1)
else:
print(x1, x2)
第五题:
circlesIntersect
题目描述
(最后编辑于2023年10月21日)
我们会输入 6 个数字 x1,y1,r1,x2,y2,r2 它们代表两个圆,圆心分别为 (x1, y1) 和 (x2, y2) ,半径分别为 r1 和 r2。你需要编写程序,判断两个圆是否相交,若相交则返回 True ,否则返回 False。(相交指两个圆在一个或多个点接触或重叠)。
输入格式
六个数字,数字类型为整数或者浮点数,以逗号分隔。
输出格式
True 或者 False,判断两个圆是否相交。
输入样例
0,0,2,3,0,2
输出样例
True
import ast
import math
x1, y1, r1, x2, y2, r2 = ast.literal_eval(input())
# 现在程序中有六个变量,x1, y1, r1, x2, y2, r2
r = abs(r1 - r2)#abs函数求绝对值
x = abs(x1 - x2)
y = abs(y1 - y2)
x = pow(x, 2)
y = pow(y, 2)
d = abs(float( math.sqrt(x) + math.sqrt(y)))#求两圆圆心距离
if r <= d <= r1 + r2:#圆心的距离和两圆心距离比较,内切,外切,相交三种情况是由交点,只有在两圆半径之和与差之间才会有两个交点
print("True")
else:
print("False")
import ast
import math
x1, y1, r1, x2, y2, r2 = ast.literal_eval(input())
# 现在程序中有六个变量,x1, y1, r1, x2, y2, r2
def do_circles_intersect(x1, y1, r1, x2, y2, r2):
# 计算圆心之间的距离
d = ((x1 - x2) ** 2 + (y1 - y2) ** 2) ** 0.5
# 比较距离和半径
if d > r1 + r2:
print("False") # 相离
elif d == r1 + r2:
print("True") # 外切
elif abs(r1 - r2) < d < r1 + r2:
print("True") # 相交
elif d == abs(r1 - r2):
print("True") # 内切
elif d < abs(r1 - r2):
print("False") # 一个圆在另一个圆的内部
else:
print("False") # 应该是不可能的情况
do_circles_intersect(x1, y1, r1, x2, y2, r2)