01/10/2018, 12:26

Code đếm n có bao nhiêu ước số là số nguyên tố khi nhập không ra kết quả

Đề : Đếm xem n có bao nhiêu ước số là số nguyên tố , nhưng code của em chạy ko dc , nhập số vào nhưng ko ra kết quả

#include<stdio.h>
void nhap(int &n);
int songuyento(int n);
int tinh(int n);
void xuat (int d);
void main()
{
	int n;
	nhap(n);
	int kq=tinh(n);
	xuat(kq);
}
void nhap(int &n)
{
	scanf("%d",n);
}
int songuyento(int n)
{
	int d=0;
	for (int i=1;i<=n;i++)
		{
		if (n%i==0)
			d=d+1;
		}
	if (d==2)
		return 1;
	else
		return 0;
}
int tinh(int n)
{
	int d=0;
	for (int i=1;i<n;i++)
	{
		if (n%i==0)
		{
			if (songuyento(i)==1)
			d=d+1;
		}
		return d;
	}
}
void xuat (int kq)
{
	printf("%d",kq);
}
rogp10 viết 14:33 ngày 01/10/2018

Scanf như vậy là lên chảo

p/s: thực ra bài này áp dụng phân tích thừa số nguyên tố là đủ hai yêu cầu khỏi lấy số mũ luôn.

Xuan Hoang viết 14:31 ngày 01/10/2018

cho em hỏi , em đã sửa lại scanf , nhưng kq thì toàn ra 0 , còn sai chỗ nào ko a

HK boy viết 14:40 ngày 01/10/2018
for (int i=1;i<n;i++)
{
	if (n%i==0)
	{
		if (songuyento(i)==1)
		d=d+1;
	}
	return d;
}

return d trong for thì làm được gì đây?

Bài liên quan
0