Utilizand tip de date tablou (array), elaborati program care realizeaza algoritmul lui eratostene pentru calcularea numerelor prime mai mici decit un numar nat. dat n (n<=200) (in TURBO PASCAL!!!)
Răspunsuri la întrebare
Răspuns de
9
Pai daca tia dat problema despre algoritmul lui eratostene, deci trebuie sa stii ce reprezinta el.
In general folosim un vector de frecventa iar la fiecare numar eliminam divizorii sai, in final afisind argumentele care au valoare ne eliminata.
var
a:array[2..200] of integer;
i,j,n:integer;
begin
read(n);
for i:=2 to n do
a[i]:=1;
for i:=2 to n do
for j:=2 to n div i do
a[i*j]:=0;
for i:=2 to n do
if a[i]<>0 then
write(i,' ');
end.
In general folosim un vector de frecventa iar la fiecare numar eliminam divizorii sai, in final afisind argumentele care au valoare ne eliminata.
var
a:array[2..200] of integer;
i,j,n:integer;
begin
read(n);
for i:=2 to n do
a[i]:=1;
for i:=2 to n do
for j:=2 to n div i do
a[i*j]:=0;
for i:=2 to n do
if a[i]<>0 then
write(i,' ');
end.
stassahul:
In general, se foloseste array de boolean, am scris asa sa intelegi mai bine, de ceva inlocuiesti fiecare 1 cu true si 0 cu false.
Alte întrebări interesante
Matematică,
8 ani în urmă
Engleza,
8 ani în urmă
Limba română,
8 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă
Geografie,
9 ani în urmă