Bạn tạo má»t hà m hoặc má»t chÆ°Æ¡ng trình con nháºn và o má»t sá» rá»i kiá»m tra sá» Äó phải là sá» nguyên tá» hay không, rá»i cho vòng for chạy, má»i bÆ°á»c lại kiá»mt ra, nếu là nguyên tá» thì cá»ng vá»i má»t biến s nà o Äó là xong.
Answers & Comments
Verified answer
uses crt;
var i,j,tong:longint;
nto:boolean;
begin
clrscr;
tong:=0;
for i:=1 to 100 do
begin
nto:=true;
j:=2;
while (nto<>false) and (j<=i div 2) do
begin
if i mod j = 0 then nto:=false;
inc(j);
end;
if nto=true then begin tong:=tong+i; write(i,' ');end;
end;
writeln;
writeln('Tong=',tong);
readln;
end.
a) Bạn chá» cần viết chÆ°Æ¡ng trình kiá»m tra các sá» nguyên tá» trong phạm vi Äã chá» và tÃnh tá»ng là xong thôi mÃ
b) chương trình
program tá»ng_các_sá»_nt;
uses crt;
var m,n,i,a,s : integer;
begin clrscr ; s := 2 ;
write( ' Bạn hãy nhâp phạm vi các sá» nguyên tá» cần tÃnh tá»ng n = ' ) ; readln( n ) ;writeln;
if n < = 2 then write( ' không có sá» nguyên tá» < 2 tá»ng bằng 0 ' ) else
begin
for m := 2 to n - 1 do
begin i := 2;
while i < m do
if m mod i = 0 then begin a := 0 ; i := i + m ; end
else begin a := 1 ; i := i + 1 ; end;
if a = 1 then s := s + m ; end ;
write( ' tá»ng các sá» nguyên tá» < ' , n , ' la s = ' , s ); end; readln; end.
Viết bằng ct con nhanh gá»n:
VAR i,s:INTEGER;
FUNCTION nt(s:INTEGER):BOOLEAN;
VAR j:INTEGER;
BEGIN
IF s=2 THEN nt:=TRUE ELSE
BEGIN
nt:=TRUE;
FOR j:=2 TO trunc(sqrt(i)) DO
IF s MOD j =0 THEN nt:=FALSE;
END;
END;
BEGIN
FOR i:=2 TO 100 DO
IF nt(i) THEN s:=s+i;
writeln(s);
readln
END.
nếu thÃch chÆ¡i kiá»u thÆ°á»ng hk1 lá»p 11:
VAR i,j,n,s:INTEGER;
kt:BOOLEAN;
BEGIN
writeln('tinh tong cac so nguyen to tu 1 den 100');
s:=0;
FOR i:=2 TO 100 DO
BEGIN
IF i=2 THEN s:=s+2 ELSE
BEGIN
kt:=TRUE;
FOR j:=2 TO i-1 DO
IF i MOD j =0 THEN kt:=FALSE;
IF kt THEN s:=s+i;
END;
END;
write('tong: ',s);
readln
END.
Bạn tạo má»t hà m hoặc má»t chÆ°Æ¡ng trình con nháºn và o má»t sá» rá»i kiá»m tra sá» Äó phải là sá» nguyên tá» hay không, rá»i cho vòng for chạy, má»i bÆ°á»c lại kiá»mt ra, nếu là nguyên tá» thì cá»ng vá»i má»t biến s nà o Äó là xong.