unit ListEratosfen; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Label1: TLabel; Edit1: TEdit; Label2: TLabel; Label3: TLabel; Label4: TLabel; procedure Edit1KeyPress(Sender: TObject; var Key: Char); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation procedure PEratosfen; {решето Эратосфена} var N: integer; {число введённых первых чисел натурального ряда} G: integer; I: integer; M: array of boolean; P: integer; {число простых чисел среди N первых натуральных чисел} K: integer; begin N:=StrToInt(Form1.Edit1.Text); G:=Trunc(Sqrt(N)); SetLength(M,N+2); for I:=1 to N do M[I] := true; P:=0; K:=2; I:=2; while (K*I