Đếm số ước số của số nguyên âm

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;
}

:point_up_2: 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 ạ

1 Like

Số thì chỉ có +0 với -0 là trùng thôi :smiley: chỉnh lại thì lấy trị tuyệt đối.

0 có vô hạn ước số nhé :smiley:

2 Likes

ôi trời, zay thì em không biết bài này thầy có gài không luôn @rogp10

Thì bạn đặt thêm if thôi :smiley:

Đề bài cho số nguyên thì phải nghĩ đến số 0. Sau này thì mình phải parse thử xem có phải là số không nữa.

4 Likes

Sao không hỏi người ra đề?

2 Likes

cái này là bài kiểm tra ấy anh, em làm xong hết rồi mà chưa nộp, đang kiểm lại thì mới thấy có cái bug trong đề :)))))) lần trc bất cẩn bị trừ điểm nên lần này sợ mất điểm :sweat_smile: thà làm dư còn hơn bị sót. Mà theo lý thuyết số nguyên thì bao gồm luôn cả số âm rồi nên e nghĩ hẳn là có, chỉ là đang sẵn tiện nghĩ cách liệt kê ra ước số khi có số nguyên âm như thế nào luôn thôi :3 @kisuluoibieng
Nếu được có thể cho em gợi ý làm thế nào cout ra ước số cho số nguyên âm không, tại nếu theo cách e nói ở trên (dùng hàm abs) thì nó chỉ liệt kê ra ước số dương thôi

Thì gửi mail hỏi chứ sao giờ. Gửi rồi bạn mới có evidence là bạn đã thắc mắc nhưng spec không rõ ràng.

2 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?