Просмотр кода
Идентификатор: 263aa3ad Описание: Код загружен: 30 октября 2011, 13:44 (Ixer)
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ComCtrls; type //своя ошибка EMyRangeException = Exception; TForm1 = class(TForm) Button1: TButton; Edit1: TEdit; Label1: TLabel; procedure FormCreate(Sender: TObject); procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } //масив arr:array[50..100] of Byte; //получение из масива с проверкой индексов function GetFromArr(idx:byte):Byte; end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin //получение числа из масива (вызов функцыи) Label1.Caption:=IntToStr(GetFromArr(StrToInt(Edit1.Text))); end; procedure TForm1.FormCreate(Sender: TObject); var i:Byte; begin Randomize; //заполнение масива произвольными даными for I := 50 to 100 do arr[i]:=Random(255); end; function TForm1.GetFromArr(idx: byte): Byte; begin //проверка индексов if (Idx < Low(arr)) or (Idx > High(arr)) then //вывод ошыбки raise EMyRangeException.Create(Format('%u is not valid Index!',[idx])) else //вывод результата Result := arr[Idx]; end; end.