Liệt kê số nguyên tố nhỏ hơn hoặc bằng n
Sau khi viết được chương trình Kiểm tra số nguyên tố các em tiếp tục phát triển chương trình của mình để được chương trình sau, cố gắng sử dụng chương trình con để thuật toán nhìn khoa học hơn.
Viết chương trình nhập vào một số n, xuất ra những số nguyên tố nhỏ hơn hoặc bằng n. Và tổng của tất cả những số nguyên tố đó.
|
|
|
|
Code Liệt kê số nguyên tố trong Pascal
program Dem_nguyen_to; var m,k,s:longint;f:text; {------ chuong trinh con kiem tra so nguyen to ----} function ngto(var n:longint):boolean; var i:longint; begin if n<2 then ngto:=false else ngto:=true; for i:=2 to trunc(sqrt(n)) do if n mod i = 0 then begin ngto:=false; break; {thoat vong lap} end; end; {--- het CT con------} {----Than chuong trinh chinh ------} begin {----Doc file ----} assign(f,'sum_nt.inp'); reset(f); read(f,m);close(f); {----Mo file de ghi----} assign(f,'sum_nt.out'); rewrite(f); k:=1; S:=0; while k<=m do begin if ngto(k) then begin write(f,k,' '); s:=s+k; end; k:=k+1; end; writeln(f); write(f,S); close(f); end.
Code Liệt kê số nguyên tố trong Python
#Declares variables snt = [] kt = True f = open("Sum_nt.inp") fo = open("Sum_nt.out", "w") a = int(f.read()) s = 0 #Find prime numbers ##Check 2 to a for i in range(2,a+1): kt = True ##Divide i from 2 to i-1 for b in range(2,i): if i != b: if i % b == 0: kt = False break if kt == True: snt.append(i) for i in range(len(snt)): fo.write(str(snt[i] ) + " ") s = s+snt[i] s = str(s) fo.write("\n" + s) fo.close()
Code Liệt kê số nguyên tố trong C++