Bạn chưa đăng nhập. Vui lòng đăng nhập để hỏi bài
Lala

Lập trình C++.Tại các thành phố lớn thường xuyên xảy ra tình trạng kẹt xe vào những giờ cao điểm. Mỗi lần kẹt xe trên đường như thế, bạn An thường nghĩ ra trò chơi để giải trí. Một trong những trò chơi đó là An đọc n số từ các biển số xe và tìm số nguyên m (m>1) sao cho n số đã đọc đều có cùng số dư khi chia cho m. Bạn An muốn tìm được càng nhiều số m như thế càng tốt. Yêu cầu: Hãy giúp bạn An tìm tất cả các số m thỏa mãn yêu cầu trên. Kết quả: Ghi vào tệp văn bản TROCHOL.OUT gồm một dòng ghi tất cả các số m tìm được theo thứ tự từ nhỏ đến lớn, giữa các số ghi cách nhau ít nhất một dấu cách. Nếu không có số m nào thỏa mãn yêu cầu thì ghi ra số -1

Phía sau một cô gái
16 tháng 2 lúc 21:15

Thử code này như bạn

#include <iostream>

#include <vector>

#include <fstream>

using namespace std;

int gcd(int a, int b) {

     if (b == 0) return a;

     return gcd(b, a % b);

}

int findGCD(const vector<int>& nums) {

     int result = nums[0];

     for (int num : nums) {

          result = gcd(result, num);

          if(result == 1) {

               return 1;

          }

     }

     return result;

}

int main() {

     int n;

     cout << "Nhap so luong so nguyen: ";

     cin >> n;

     vector<int> nums(n);

     cout << "Nhap " << n << " so nguyen:\n";

     for (int i = 0; i < n; ++i) {

          cin >> nums[i];

     }

     int gcd_of_nums = findGCD(nums);

     ofstream outfile("TROCHOL.OUT");

     if (gcd_of_nums == 1) {

          outfile << -1;

     } else {

          for (int m = 2; m <= gcd_of_nums; ++m) {

               if (gcd_of_nums % m == 0) {

                    outfile << m << " ";

               }

          }

     }

     outfile.close();

     return 0;

}


Các câu hỏi tương tự
thiên thanh
Xem chi tiết
Thảo Linh
Xem chi tiết
32. Xuân Thanh-7a5
Xem chi tiết
Nguyễn Thy
Xem chi tiết
gấu trúc VN
Xem chi tiết
Thắng Huỳnh
Xem chi tiết
Trường Phước
Xem chi tiết
Lala
Xem chi tiết
Vũ Hữu Phong
Xem chi tiết
Trần Trọng Hùng
Xem chi tiết