輾轉相除法求最大公倍數和最小公約數

2021-09-16 13:46:59 字數 515 閱讀 2847

這是我的第一篇部落格。希望自己以後也能堅持下去,來記錄我學習c++的一些歷程。

今天做acm題,是求最小公倍數和最大公因數的。用輾轉相除法做。我一開始用int型,發現測試普通資料時均得出正確答案。但是用題目中的測試資料30000000,50000000的時候,最大公約數是沒有問題,但最大公倍數顯示是負數。後來發現是int型的儲存空間不夠。換成long或者long long型就可以。

然後還學會了怎樣用eof結束程式。必須在c的環境下,用while(scanf("%d",&a)!=eof)完成。

以下是我的**:

#include#include//用有關c程式的函式時,需加此標頭檔案

using namespace std;

main()

d=num/a;

cout《學習小結:了解了關於輾轉相除法求最大公約數和最小公倍數的方法

了解了c++中如何用eof結束程式

初步了解了long型,以及long long型的相關知識。

習題4 7 最大公約數和最小公倍數(輾轉相除法)

本題要求兩個給定正整數的最大公約數和最小公倍數。輸入在一行中給出兩個正整數m和n 1000 在一行中順序輸出m和n的最大公約數和最小公倍數,兩數字間以1空格分隔。511 29273 2044法一 直接翻譯最小公倍數和最大公約數的數學意思。include int main void 最大公約數 m除以...

輾轉相除法求 兩個數的最大公約數 最小公倍數。

輾轉相除法求兩個數的最大公約數 設這兩個數分別為a和b,a與b取模,如果不等於零,將b賦值給a,再將此時的餘數再賦值給b,然後再a與b取模,直至取模後值為零。則最大公約數為此時的b。程式的實現 define crt secure no warnings 1 include int main prin...

最大公約數 最小公倍數 輾轉相除法的求解和證明

兩個正整數的最大公約數 greatest common divisor,gcd 在計算機中通常使用輾轉相除法計算,最小公倍數 least common multiple,lcm 可以使用gcd來計算。下面首先介紹gcd和lcm。然後介紹輾轉相除法的計算形式,並證明為什麼可以得出gcd。若正整數 的g...