最小python
⑴ python求最大公約數和最小公倍數
python求最大公約數和最小公倍數
定義一個函數
def hcf(x, y):
該函數返回兩個數的最大公約數
# 獲取最小值
if x > y:
smaller = y
else:
smaller = x
for i in range(1,smaller + 1):
if((x % i == 0) and (y % i == 0)):
hcf = i
return hcf
# 用戶輸入兩個數字
num1 = int(input("輸入第一個數字: "))
num2 = int(input("輸入第二個數字: "))
print( num1,"和", num2,"的最大公約數為", hcf(num1, num2))
求兩個數的最小公倍數的演算法有很多種,效率最高的一種是先計算出它們的最大公約數。
採用輾轉相除法,可以求出兩個正整數的最大公約數。先保存a和b的數值的副本,求出a÷b的余數,如果不等於零,就令a=b,b等於這一次的余數。
重復做上述的除法零,直到余數為0的時候,B的值就是一開始兩個數的最大公約數。這時初始的兩數乘積除以最大公約數就是兩個數的最小公倍數。
⑵ python 求n個數最大值 最小值
我可以使用Python內置的max和min函數來完成這個任務,或者對輸入的數進行排序後取第一個和最後一個元素。以下是兩種可能的函數實現:
# 方法一:使用max和min函數def max_min(nums): # 判斷輸入是否為空
if not nums: return None, None
# 使用max和min函數求孝衫斗最塌廳大值和最巧磨小值
max_num = max(nums)
min_num = min(nums) return max_num, min_num# 方法二:使用排序後取首尾元素def max_min(nums): # 判斷輸入是否為空
if not nums: return None, None
# 對輸入的數進行排序
nums.sort() # 取第一個和最後一個元素作為最大值和最小值
max_num = nums[-1]
min_num = nums[0] return max_num, min_num# 測試函數n = int(input("請輸入要輸入的數的個數:\n"))
nums = []for i in range(n):
num = int(input(f"請輸入第{i+1}個數:\n"))
nums.append(num)
max_num, min_num = max_min(nums)print(f"這些數中的最大值是{max_num},最小值是{min_num}")
