Поиск минимального (максимального) элемента массиваDelphi , Синтаксис , МассивыПоиск минимального (максимального) элемента массиваЗадачу поиска минимального элемента массива рассмотрим на примере массива целых чисел. Алгоритм поиска минимального (максимального) элемента массива довольно очевиден: сначала делается предположение, что первый элемент массива является минимальным (максимальным), затем остальные элементы массива последовательно сравниваются с этим элементом. Если во время очередной проверки обнаруживается, что проверяемый элемент меньше (больше) принятого за минимальный (максимальный), то этот элемент становится минимальным (максимальным) и продолжается проверка оставшихся элементов. Диалоговое окно приложения поиска минимального элемента массива содержит соответствующим образом настроенный компонент stringGridi, который применяется для ввода элементов массива, два поля меток (Label1 и Labeia), использующиеся для вывода информационного сообщения и результата работы программы, и командную кнопку (Buttonl), при щелчке на которой выполняется поиск минимального элемента массива. В табл. 5.4 приведены значения свойств компонента stringGridi. Свойство Значение ColCount 005 FixedCols 000 RowCount 001 DefaultRowHeight 024 Height 024 DefaultColWidth 064 Width 328 Options.goEditing True Options.AlwaysShowEditing True Options.goTabs True В листинге 5.6 приведена процедура обработки события Onclick для командной кнопки Button1, которая вводит массив, выполняет поиск мини-мального элемента и выводит результат — номер и значение минимального элемента массива. Листинг 5.6. Поиск минимального элемента массива unit lookmin_; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Grids; type TForm1 = class(TForm) Label1: TLabel; Button1: TButton; Label2: TLabel; StringGridl: TStringGrid; procedure ButtonlClick(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.DFM} procedure TForm1.ButtonlClick(Sender: TObject); const SIZE = 5; var a: array[l..SIZE] of integer; // массив целых min: integer; // номер минимального элемента массива i: integer; // номер элемента, сравниваемого с минимальным begin // ввод массива for i:=1 to SIZE do a[i] := StrToInt(StringGridl.Cells[i - 1, 0]); // поиск минимального элемента min := 1; // пусть первый элемент минимальный for i := 2 to SIZE do if a[i] < a[min] then min := i; // вывод результата label2.caption := 'Минимальный элемент массива:' + IntToStr(a[min] + #13 + 'Номер элемента:' + IntToStr(min); end; end. Статья Поиск минимального (максимального) элемента массива раздела Синтаксис Массивы может быть полезна для разработчиков на Delphi и FreePascal. Комментарии и вопросыМатериалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |