C++ - Tìm ước Chung Lớn Nhất Của 2 Số Nguyên được Nhập Từ Bàn ...
Có thể bạn quan tâm
Viết một chương trình tìm ước chung lớn nhất của 2 số nguyên được nhập từ bàn phím
Bài giải
-------------------- ######## --------------------
Theo trang Wikipedia: Số nguyên a chia hết cho số nguyên b thì số nguyên b được gọi là ước của số nguyên a. Số nguyên dương b lớn nhất là ước của cả hai số nguyên a và b, thì b được gọi là ước số chung lớn nhất (ƯCLN) của a và b.
Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức. Trong trường hợp:
- Cả hai số nguyên a và b đều bằng 0 thì chúng không có ước chung lớn nhất.
- Nếu một trong hai số a và b bằng 0, thì ƯCLN của a và b bằng giá trị tuyệt đối của số khác 0.
Cách giải bài toán trên như sau:
- Nhập 2 số nguyên từ bàn phím, ta gọi 2 biến lần lượt là so1 và so2
- Nếu cả hai số đều bằng 0 thì in ra màn hình không có ước chung lớn nhất
- Nếu so1 khác 0 và so2 bằng 0 thì so1 là ước chung là ước chung lớn nhất
- Nếu so1 bằng 0 và so2 khác 0 thì so2 là ước chung là ước chung lớn nhất
- Tìm số nhỏ nhất trong 2 số, ta gọi đó là min
- Sử dụng vòng lặp for lặp từ 1 đến min, tìm ước lớn nhất của so1 va so2 bằng nhau. Các bạn có thể xem lại tìm ước của một số nguyên riêng lẻ ở bài tập trước.
Chúng ta sẽ giải bài toán trên bằng cách sử dụng vòng lặp for trong C++ như sau:
Bài viết này được đăng tại [free tuts .net]
#include <cmath> #include <iostream> using namespace std; int main() { int i, so1, so2, min, ucln = 1; cout << "Nhap so thu nhat: "; cin >> so1; cout << "Nhap so thu hai: "; cin >> so2; if(so1 == 0 && so2 == 0) { cout << "Hai so 0 khong co uoc chung lon nhat" << endl; } else if (so1 != 0 && so2 == 0) { cout << "Uoc chung lon nhat cua " << so1 << " va " << so2 << " la " << abs(so1) << endl; } else if (so1 == 0 && so2 != 0) { cout << "Uoc chung lon nhat cua " << so1 << " va " << so2 << " la " << abs(so2) << endl; } else { if(so1 < so2) { min = so1; } else { min = so2; } for(int i = 1; i <= min; i++) { if(so1%i == 0 && so2%i == 0) { ucln = i; } } cout << "Uoc chung lon nhat cua " << so1 << " va " << so2 << " la " << ucln << endl; } return 0; }Và kết quả sau khi thực thi chương trình trên như sau:
Khi nhập số thứ nhất là 6 và số thứ hai là 8:
Khi nhập số thứ nhất là 3 và số thứ hai là 5:
Khi nhập số thứ nhất là 12 và số thứ hai là 30:
Khi nhập cả hai số bằng 0:
Khi nhập số thứ nhất là 0 và số thứ hai là 5:
Khi nhập số thứ nhất là -7 và số thứ hai là 0:
Trong chương trình trên chúng ta có sử dụng hàm abs đây là hàm xây dựng sẳn trong C++ để lấy giá trị tuyệt đối của một số. Ở bài này chúng ta chưa cần biết khái niệm hàm là gì đâu nhé, mình một bài để nói riêng về hàm trong C++.
7. Bài tập vòng lặp for trong C++
- C++ - In tất cả các số chẵn từ 1 đến n được nhập từ bàn phím
- C++ - Đảo ngược một số nguyên bất kỳ được nhập từ bàn phím
- C++ - In ra hình tam giác với các ký tự *
- C++ - In ra màn hình bảng cửu chương của một số nhập từ bàn phím
- C++ - Tính giai thừa của một số được nhập từ bàn phím
- C++ - Tìm tất cả ước của một số nguyên được nhập từ bàn phím
- C++ - Tính lũy thừa của một số nguyên được nhập từ bàn phím
- C++ - Tìm ước chung lớn nhất của 2 số nguyên được nhập từ bàn phím
Cùng chuyên mục:
Các hàm xử lý mảng đa chiều (array.h) trong C/C++
Các hàm xử lý ngày tháng (datetime.h) trong C/C++
Các hàm xử lý số thực (float.h) trong C/C++
Các hàm xử lý số nguyên lớn (bigint.h) trong C/C++
Các hàm xử lý thời gian (time.h) trong C
Các hàm xử lý chuỗi (string.h) trong C/C++
Thread Pools và Parallel Algorithms trong C++
Tạo và quản lý các Multithreading trong C++
Xử lý ngoại lệ khi làm việc với Memory Allocation trong C++
Try, Catch, và Throw của Exception Handling trong C++
Cách sử dụng Lambda Expressions trong C++
Sử dụng weak_ptr trong C++
Sử dụng shared_ptr trong C++
Sử dụng unique_ptr trong C++
Tổng quan về Smart Pointers trong C++
Sử dụng Iterators trong STL của C++
[Iterator] Sử dụng Vector trong C++
[Iterator] Sử dụng trong List trong C++
[STL] Sử dụng Vector trong C++
Tổng quan về Iterators trong C++
Từ khóa » Cách Tìm ước Chung Lớn Nhất Của 2 Số C++
-
Thuật Toán Tìm ước Chung Lớn Nhất Trong C/C++ - Lập Trình Không Khó
-
Thuật Toán Tìm ước Chung Lớn Nhất Trong C/C++ - Freetuts
-
3 Thuật Toán Tìm ước Chung Lớn Nhất C/C++
-
Tìm ước Số Chung Lớn Nhất Và Bội Số Chung Nhỏ Nhất Của A Và B
-
Thuật Toán Tìm ước Chung Lớn Nhất Trong C/C++ - BEM2.VN
-
Tìm ước Chung Lớn Nhất Của 2 Số C++? - Tạo Website
-
Bài Tập C++ - Tìm ước Số Chung Lớn Nhất (USCLN) Và Bội ... - VietTuts
-
Tìm ước Số Chung Lớn Nhất Trong C
-
Lập Trình Căn Bản C: Tìm ước Chung Lớn Nhất, Bội ... - VN SEEDER
-
Cách Tìm UCLN Và BCNN Trong Lập Trình C/C++
-
Tìm Các ước Của Một Số Nguyên Dương Và GCD - LCM - Viblo
-
C++ Bài Tập 2.8: Ước Chung Lớn Nhất & Bội Chung Nhỏ Nhất - YouTube
-
Cách Tìm ước Chung Lớn Nhất Của 2 Số - Justi Sofa