1、创建一个名叫 MyTriangle 的模块,它包含下面两个函数
#Returns true if the sum of any two sides isgreater than the third side.
def isValid(sidel,side2,side3):
# Returns the area of the triangle.
def area(sidel,side2,side3):
编写一个测试程序,读入三角形三边的值,若输入有效则计算面积。否则,显示输入无效计算
1、MyTriangle模块
import math
def isValid(side1, side2, side3):
if side1 + side2 > side3 and side1 + side3 > side2 and side2 + side3 > side1:
return True
else:
print("无效计算")
def area(side1, side2, side3):
if isValid(side1, side2, side3):
p = (side1 + side2 + side3) / 2
area1 = math.sqrt(p * (p - side1) * (p - side2) * (p - side3))
return area1
2、计算面积
from MyTriangle import isValid,area
side1, side2, side3 = map(float, input("三条边分别为(用空格分开):").split())
if isValid(side1, side2, side3):
print("三角形的面积为", area(side1, side2, side3))
运行结果
二、双素数是指一对差值为2的素数。例如:3和5就是一对双素数,5和7就是一对双素数,11和13也是一对双素数。编写程序,找出所有小于1000的双素数。
def isprime(num):
if num < 2:
return False
if num == 2 or num == 3:
return True
if num % 2 == 0:
return False
for i in range(3, int(num ** 0.5) + 1, 2):
if num % i == 0:
return False
return True
for i in range(2, 1000):
if isprime(i) and isprime(i + 2):
print(i, i + 2)
部分运行结果
三、编写函数将二进制数作为字符串转换为一个十进制整数,使用下面的函数头。
def binaryToDecimal(binaryString):
编写一个测试程序,提示用户输人一个二进制字符串,然后显示对应的十进制整数值。
def binaryToDecimal(binaryString):
result = 0
length = len(binaryString)
for i in range(length):
byte = binaryString[i]
if byte == "1":
sum = length - 1 - i
result += 2 ** sum
return result
binaryString = input("请输入一个二进制字符串: ")
result = binaryToDecimal(binaryString)
print(f"二进制字符串 {binaryString} 对应的十进制整数值是: {result}")
运行结果