Đây là bài làm của em, nhưng chưa tối ưu, mong mọi người thông não… Cảm ơn mọi người
#include <stdio.h>
#include <math.h>
int main() {
int i, j, loop, count = 1, list[100000] = {2};
for(i=3; i<=1000000; i+=2) {
loop = floor(sqrt(i));
for(j=0; list[j]<=loop; ++j)
if( i % list[j] == 0 ) {
loop = 0;
break;
}
if( loop > 0 ) {
list[count] = i;
++count;
printf("%8d", i);
}
}
printf("\n\n- Count: %d", count);
return 0;
}
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?