Файлы.pascal. Дано натуральное число n. Записать в текстовый файл n простых чисел начиная...

0 голосов
20 просмотров

Файлы.pascal. Дано натуральное число n. Записать в текстовый файл n простых чисел начиная с 2.


Информатика (155 баллов) | 20 просмотров
Дано ответов: 2
0 голосов

Uses
    System.Collections.Generic,
    System;

var
    simple: List := new List;
    i, n, p: integer;
    m: longint;

begin
    read(n);
    for i := 2 to n do 
    begin
        m := 1;
        foreach s: integer in simple do
            m := m * i mod s;
        if m > 0 then begin
            simple.Add(i);
//            write(i, ' ');
        end;
    end;
    writeln();
    
    foreach s: integer in simple do 
    begin
        if Math.Pow(2, s) - 1 <= longint.MaxValue then begin<br>            m := round(Math.Pow(2, s) - 1);
            if (m <= n) and simple.Contains(m) then<br>                write(m, ' ');
        end;
    end;
end.

(44 баллов)
0 голосов

 function prost (x : integer) : boolean; 
var   
i : integer;   
r : boolean; 
begin   
i := 2;   
r := true;   
While (i <= x div 2) and (r) do    <br>begin     
if x mod i = 0 then     
r := false;     
i := i +1;   
end;   
Result := r; 
end;  

var   
i,n : integer;   
t : text; 
begin 
readln (n);   
assign (t,'file.txt'); 
rewrite (t);   
for i := 2 to n do   
begin     
if prost(i) then     
write (t,i+' ');   
end; 
close (t);   
end.

(2.6k баллов)