1.Дано натуральное число n. Найти все меньшие n простые числа, которые могут быть...

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

1.Дано натуральное число n. Найти все меньшие n простые числа, которые могут быть представлены в виде 2^p-1, где p- тоже простое число.( ABC Pascal)


Информатика (31 баллов) | 36 просмотров
Дан 1 ответ
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.

(53.1k баллов)
0

если правильно, то поставь лучшее решение пожалуйста, надо для статуса) заранеее спасибо)