Thứ Hai, 5 tháng 3, 2012
Bài 2./ C : Liệt kê các số nguyên tố nhỏ hơn 1 số nguyên dương cho trước.
Bước 1 : inPut : 1 số nguyên dương.
outPut : các số nguyên tố nhỏ hơn số trên.
Bước 2 : Số nguyên tố là số chỉ có 2 ước.
#include<stdio.h>
#include<conio.h>
int ngTo (int);
main()
{
int n ;
char kiemtra ;
do{
printf("Nhap so nguyen duong n :=");
scanf("%d",&n);
ngTo(n);
printf("Co tiep tuc khong ? (C/K)");
kiemtra = getche();
printf("\n\n");
} while (kiemtra == 'c');
getch();
}
int ngTo ( int n )
{
int i , j ,dem=0;
printf ("Cac so nguyen to nho hon %d la :", n);
for (i=n-1 ; i != 0; i--) // Vòng for 1
{
for (j = i ; j !=0 ; j--)
{
if ( i % j == 0)
dem++;
}
// Đoạn dưới đây nằm trong vòng for 1 .
if (dem ==2) // So sánh như này sẽ mất nhiều thời gian khi n lớn , có cách nào khác không ?
printf( "%d, ", i );
dem = 0; // Cập nhật lại biến đếm của từng số i .
}
}
Đăng ký:
Đăng Nhận xét (Atom)
Không có nhận xét nào:
Đăng nhận xét