Chào mọi ng, em muốn hỏi là với đề bài trên là nhập ngẫu nhiên số nguyên, vậy thì khi có số nguyên âm thì tính ước số như thế nào, có phải e sẽ tính như số nguyên dương (bằng cách dùng hàm abs) xong rồi nhân đôi số lượng ước số đúng không? Tại em cũng thử mở máy tính tay tính thử những phép tính chia của số âm thì thấy kể cả ước số là số âm hay dương gì cũng chia hết nên chưa biết làm thế nào. Bình thường chỉ làm tìm ước số cho số nguyên dương, làm thuần thục rồi nay thầy cho đề thì ra ước số của 1 số nguyên, không biết có tính luôn số âm không?
P/s: em mới học 8 buổi thôi, bao gồm cấu trúc rẽ, cấu trúc lặp, mảng 1 chiều, hàm nên các tiền bối vui lòng đừng dùng cái gì cao xa quá, đọc không hiểu @@
#include<iostream>
using namespace std;
int USSoNT(int n){
int dem = 0;
for (int i = 1; i <= n; i++){
if (n % i == 0){
dem++;
cout << i << " ";
}
}
if (dem != 0){
cout << " la cac uoc so cua " << n << endl;
}
return dem;
}
int main(){
int n;
cout << "Nhap 1 so nguyen: ";
cin >> n;
cout << "So luong uoc so cua so nguyen tren la " << USSoNT(n) << endl;
}
code này rõ ràng chỉ phù hợp số nguyên dương, chỉ để chỉ ra là e chỉ hỏi tham khảo không phải để nhờ giải giùm, thks các tiền bối đã đọc ạ