Родились сегодня:
Антонина


Лидеры рейтинга

ID: 226425

Konstantin Shvetski

Модератор

672

Россия, Северодвинск


ID: 259041

Алексеев Владимир Николаевич

Мастер-Эксперт

325

Россия, пос. Теплоозёрск, ЕАО


ID: 401284

Михаил Александров

Академик

278

Россия, Санкт-Петербург


ID: 325460

CradleA

Академик

211

Беларусь, Минск


ID: 401888

puporev

Профессор

140

Россия, Пермский край


ID: 400815

alexleonsm

6-й класс

130


ID: 137394

Megaloman

Мастер-Эксперт

120

Беларусь, Гомель


8.8.12

06.05.2021

JS: 2.8.16
CSS: 4.5.4
jQuery: 3.6.0
DataForLocalStorage: 2021-05-06 21:16:03-standard


Создание программ на языках Pascal, Delphi и Lazarus.

Администратор раздела: Зенченко Константин Николаевич (Старший модератор)

Консультация онлайн # 200391

Раздел: Pascal / Delphi / Lazarus
Автор вопроса: Edison (Посетитель)
Дата: 05.03.2021, 11:38 Консультация закрыта
Поступило ответов: 1

Уважаемые эксперты! Пожалуйста, нужна помощь в решении задачи на Delphi.
Дана последовательность целых чисел. Длину последовательности задавать с клавиатуры (в Edit через Button выводить в Memo). Числа в последовательности задавать случайным образом из диапазона от 100 до 999. Найти все трехзначные простые числа - число, больше 1, называется простым , если оно не имеет положительных делителей, кроме 1 и самого себя. (Определить функцию, позволяющую распознавать простые числа.)

Здравствуйте, Edison!

Код Lazarus
Код [Pascal]
unit Unit1;
{$mode objfpc}{$H+}
interface
uses
  Classes, SysUtils, Forms, Controls, Graphics, Dialogs, StdCtrls, Math;
type
  { TForm1 }
  TForm1 = class(TForm)
    Button1: TButton;
    Edit1: TEdit;
    Memo1: TMemo;
    procedure Button1Click(Sender: TObject);
    procedure Edit1KeyPress(Sender: TObject; var Key: char);
  private
  public
  end;
var
  Form1: TForm1;
implementation
{$R *.lfm}
{ TForm1 }
  function prime(a:integer):boolean;
    var
      b:integer;
    begin
      b:=a-1;
      while (b>1)and((a mod b) >0)do dec(b);
      prime:=b=1;
    end;
  procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: char);
    begin
      if not(Key in ['0'..'9'])then Key:=#0;
    end;
  procedure TForm1.Button1Click(Sender: TObject);
    var
      i,j:integer;
    begin
      for i:=1 to StrToInt(Edit1.Text) do
        begin
          j:=RandomRange(100,999);
          if prime(j) then Memo1.Lines.Add(IntToStr(j));
        end;
    end;
end.


Удачи!

Зенченко Константин Николаевич

Старший модератор
09.03.2021, 13:12
5


Evaluation - 5

Мини-форум консультации # 200391

Нет сообщений в мини-форуме

Возможность оставлять сообщения в мини-форумах консультаций доступна только после входа в систему.
Воспользуйтесь кнопкой входа вверху страницы, если Вы зарегистрированы или пройдите простую процедуру регистрации на Портале.

Лучшие эксперты раздела

puporev

Профессор

Рейтинг: 140

Зенченко Константин Николаевич

Старший модератор

Рейтинг: 74

Вадим Исаев ака sir Henry

Мастер-Эксперт

Рейтинг: 2

Степанов Иван /REDDS

4-й класс

Рейтинг: 1

Лысков Игорь Витальевич

Мастер-Эксперт

Рейтинг: 0

Асмик Гаряка

Советник

Рейтинг: 0