Python 問題 110 列表中的最大公約數 PythonTip 題庫 300 個問題

Mondo 教育 更新 2024-02-25

1. 程式設計問題:

最大公約數 (GCD) 是兩個或多個整數的公約數中最大的乙個。 例如,12 和 18 的最大公約數是 6。

編寫乙個程式來查詢數字列表的最大公約數。

定義函式 find gcd of numbers(),它採用引數 numbers 列表。

在函式內部,計算並返回列表中數字的最大公約數。

首先,優化函式 gcd(),該函式用於計算兩個數的最大公約數。 在 find gcd of numbers() 中使用此 gcd() 函式來計算數字列表的最大公約數。 示例輸入。

示例輸出。 解釋:1 是最大的正整數,即最大的公約數,可以被所有給定的數字整除,不留餘數。

2. 實施:

可編輯 ** 如下:

#!/usr/bin/python3.9

# -*coding: utf-8 -*

## copyright (c) 2024 , inc. all rights reserved

## @time : 2024/2/16 18:12

# @author : fangel

# @filename : 110.列表中的最大公約數。 py

# @software : pycharm

定義用於查詢最大公約數的函式。

def gcd(a, b):

if b == 0:

return a

return gcd(b, a % b)

def find_gcd_of_numbers(numbers_list):

i = 0 將列表中的第乙個元素分配給 resgcd

resgcd = numbers_list[0]

遍歷列表,繼續查詢前兩個數字和下乙個數字的最大公約數。

while i < len(numbers_list) -1:

resgcd = gcd(resgcd, numbers_list[i + 1])

i += 1

return resgcd

接受整數輸入並轉換為列表。

numbers_list = list(map(int, input().split())

呼叫函式。

print(find_gcd_of_numbers(numbers_list))

三、分析:

數字列表的最大公約數可以通過逐個計算當前結果的最大公約數與列表中的下乙個數字來計算。

4、執行結果:2月**動態激勵計畫投入:

輸出:

相關問題答案

    Python 問題 89 從字典中刪除一組鍵 PythonTip 題庫 300 個問題

    程式設計問題 編寫乙個程式,使用提供的鍵列表從字典中刪除一組指定的鍵。使用兩個引數定義函式 remove keys dict input 和 key list。在函式中,從字典中刪除鍵列表中存在的所有鍵。返回更新的字典。示例輸入。fruit apple color red price color p...

    Python 問題 104 查詢缺失列表的長度 PythonTip 題庫 300 個問題

    程式設計問題 考慮以下巢狀列表 在這種情況下,巢狀列表的長度各不相同,我們觀察到給定的巢狀列表中缺少長度為 的列表。編寫乙個程式來查詢巢狀列表中缺失列表的長度。假設只有乙個缺失的列表。使用列表的引數列表定義缺少的 list 的函式長度。在函式中,從列表列表中返回缺失列表的長度。如果沒有缺少的列表,則...

    Python 問題 81 檢查連續數字和 PythonTip 題庫 300 個問題

    程式設計問題 編寫乙個程式來檢查給定的數字是否可以表示為兩個或多個連續正數的總和。例如 其中 和 都可以表示為連續數字的總和。使用引數 n 定義函式 check continuous sum 在函式中,檢查數字 n 是否可以表示為連續數字的總和。如果數字可以表示為連續數字的總和,則返回 true,否...

    Python 問題 84 扁平化為一維列表 PythonTip 題庫 300 個問題

    程式設計問題 編寫乙個程式,將巢狀列表扁平化為一維列表 即,沒有乙個元素是列表 定義函式 flatten list 它有乙個列表的引數列表。在函式中,建立乙個新的一維列表,其中包含子列表中的所有元素。返回新建立的列表。輸入格式為 n 列表數。列表 列表 列表 列表 list n list n 示例輸...

    Python 問題 85 階乘數和 PythonTip 題庫 300 個問題

    程式設計問題 編寫乙個程式來計算數字的階乘並計算該因子的位數之和。在 factorial 函式中以 num 為引數定義數字總和。在函式中,首先計算 num 的階乘,然後返回階乘中數字的總和。數字 num 的階乘是從 到 num 的所有數字的乘積。例如,如果階乘 為 ,則其階乘數之和為 。輸入示例 輸...