1。求最小公倍數
思路:首先比較兩個數的大小,找出大的那個數,再用大的那個數的倍數,從小到大,開始嘗試整除小一點的那個數,整除成功時大的那個數的倍數,就是兩個數的最小公倍數。
#**用於實現兩個整數間的最小公倍數演算法:
deffangfa
(a,b):
if a>b:
bigger=a
smaller=b
else:
bigger=b
smaller=a
i=1while
true:
if (bigger*i)%smaller==0: #如果大的那個數,一旦他的倍數能整除小的那個數,就直接跳出迴圈,他的倍數就是最小公倍數
print('最小公倍數為:',(bigger*i))
break
i+=1
if __name__ == '__main__':
a = int(input('請輸入第乙個數:'))
b = int(input('請輸入第二個數:'))
fangfa(a,b)
2。求最大公約數
思路:首先也是比較兩個整數之間的大小關係,找到比較小的那個數。然後開始取值(從1開始嘗試,到比較小的那個數結束),如果中間有個數恰好能把兩個整數整除,那麼y=那個數。中間可能有好幾個數都可以把兩個整數整除(公約數),但到取值結束,y中的值,必然是可以把兩個整數整除的那些數中,值最大的——-最大公約數
#該函式返回兩個整數的最大公約數""
deffangfa
(a,b):
if a>b:
smaller=b
else:
smaller=a
y=1#給出乙個預設值
for i in range(1,smaller+1): #range函式左閉右開
if (a%i==0) and (b%i==0): #如果是公約數,y等於公約數;然後如果再找到乙個更大的公約數,y被更大公約數覆蓋
y=i# break #如果加break就是遇到最小的公約數就跳出迴圈,展示出最小公約數
print('最大公約數為:',y)
if __name__ == '__main__':
a = int(input('請輸入第乙個整數:'))
b = int(input('請輸入第二個整數:'))
fangfa(a,b)
求兩個整數之和
這個比較簡單,先設定3個變數,x和y用來存放兩個整數,sum用來存放兩數之和,用賦值運算子 把相加的結果賦給sum 編寫程式 include 編譯預處理指令 int main 定義主函式 int x,y,sum 程式的宣告部分,定義3個整型變數,分別是x,y,sum printf 請輸入第乙個整數 ...
求兩個整數之和
寫乙個函式,求兩個整數之和,要求在函式體內不得使用 四則運算符號。publicclasssolution returnnum1 首先看十進位制是如何做的 5 7 12,三步走 第一步 相加各位的值,不算進製,得到2。第二步 計算進製值,得到10.如果這一步的進製值為0,那麼第一步得到的值就是最終結果...
求兩個整數的最小公倍數
求兩個整數的最小公倍數 假設兩個整數為x和y。演算法1 1 先求出x和y的最大公約數,並賦給變數r 2 x和y的最小公倍數即為 x y r 程式如下 int getm int x,int y 該方法需呼叫求最大公約數函式。演算法2 1 將兩數中較小的數放在x中,較大數儲存在y中。2 判斷y是否為x的...