К содержанию

Одномерные и многомерные массивы (задание 1)

Задача: Массив целых чисел из 10 элементов заполнить случайным образом. Упорядочить массив по возрастанию. Подсчитать количество и сумму элементов, больших 10 и меньших 40, вывести полученный результат.

Текст программы:

unit Unit1;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, Grids, ComCtrls;

type

TForm1 = class(TForm)

PageControl1: TPageControl;

TabSheet1: TTabSheet;

TabSheet2: TTabSheet;

TabSheet3: TTabSheet;

StringGrid1: TStringGrid;

Button1: TButton;

Button2: TButton;

Edit1: TEdit;

Edit2: TEdit;

Label1: TLabel;

Label2: TLabel;

Button3: TButton;

StringGrid2: TStringGrid;

Label3: TLabel;

procedure Button1Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure Button3Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

//описание переменных

var

Form1: TForm1;

mas:array[1..10] of integer;

i,j:integer;

k,s,buf:integer;

implementation

{$R *.dfm}

//процедура для заполнения массива случайными числами

procedure TForm1.Button1Click(Sender: TObject);

begin

randomize;

for i:=1 to 10 do begin

mas[i]:=random(80); //заполнение массива случайными числами в пределах от 0 до 80

StringGrid1.Cells[i-1,0]:=IntToStr(mas[i]);//вывод элементов массива в компонент StringGrid1

end;

end;

//процедура для сортировки массива по возрастанию

procedure TForm1.Button2Click(Sender: TObject);

begin

for i:=1 to 10 do begin

for j:=i+1 to 10 do

if mas[j]< mas[i] then

begin //обмен элементов местами с помощью вспомогательной переменной

buf:=mas[ i ];

mas[i]:=mas[j];

mas[j]:=buf;

end;

end;

for i:=1 to 10 do

StringGrid2.Cells[i-1,0]:=IntToStr(mas[i]); //вывод элементов массива в компонент StringGrid2

end;

//процедура для вычисления количества и суммы элементов больших 10 и меньших 40

procedure TForm1.Button3Click(Sender: TObject);

begin

//начальные значение переменным для подсчета количества и суммы элементов массива в диапазоне от 10 и до 40

s:=0;

k:=0;

for i:=1 to 10 do

if ((mas[i]>=10) and (mas[i]<=40)) then begin

s:=s+mas[i];

k:=k+1;

end;

//вывод значений количества и суммы в компоненты Edit1 и Edit2

Edit1.Text:=IntToStr(k);

Edit2.Text:=IntToStr(s);

end;

end.

Добавить комментарий

Частые вопросы

Можно ли считать рейтинг на Языки программирования Pascal и Delphi рекламой?

Нет, это справочная подборка. Партнёрские ссылки, если они есть, не заменяют проверку оферты, лицензий и отзывов на стороне сервиса.

Чем страница «Одномерные и многомерные массивы (задание 1)» отличается от главной Языки программирования Pascal и Delphi?

Это отдельная карточка или рубрика, а не дубль главной. Канонический адрес — текущий URL без www и с https.

Стоит ли покупать «Одномерные и многомерные массивы (задание 1)» только по этому тексту?

Нет. Текст помогает сравнить варианты, но финальный выбор зависит от вашего сценария, бюджета и актуальной оферты продавца.

Где смотреть источники и контакты редакции Языки программирования Pascal и Delphi?

Автор указан в карточке страницы. Служебные разделы — «О проекте», «Контакты» и политика конфиденциальности — в подвале сайта.