Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Яровой_Информатика.doc
Скачиваний:
49
Добавлен:
13.04.2015
Размер:
3.2 Mб
Скачать

2.3. Составление программ реализующих основные матричные операции

Программирование в Delphi проводится с учетом взаимодействия 2-х процессов: процесса создания(конструирования) окна программы и процесса написания фрагментов программы на языке Object Pascal, которые по общепринятой терминологии будем называть кодом. Между содержимым окна программы и кода существует неразрывная связь, которая строго отслеживается системой Delphi. Поэтому при составлении программы условно выделим следующие этапы:

- оформление эскиза и окна программы;

- размещение компонентов на форме и изменение их свойств;

- составление программы.

Задание 1

Даны 2 вещественные квадратные матрицы:

, .

Составим программу, в которой предусмотрим:

- ввод каждого элемента матриц A и B;

- получение матрицы C=A*B;

- отображение на экране (в окне программы): вводимых элементов матриц А и В (для контроля правильности ввода исходных данных); значений элементов матрицы С, полученных в результате счета в виде:

с[1,1]=

с[1,2]=

с[4,4]=

Оформление эскиза окна программы

.Рис. 7.1. Эскиз окна программы.

Окно программы должно быть «понятным» для пользователей и аккуратно оформленным. Разделив процедуры ввода исходных данных и вывода результатов, а также используя знания о компонентах Delphi, нанесем в эскизе окна программы (см. рис. 7.1) нижеперечисленные компоненты.

1. Компонент Edit1 – это однострочный текстовый редактор, который в общем случае используется для отображения, ввода и редактирования однострочных текстов. Основным свойством Edit1 является Text, которое представляет собой отображаемую компонентом строку. В этой строке будем отображать «подсказки» при вводе элементов матриц А и В. «Подсказки» будут иметь вид: a[1,1]=, a[1,2]=,…, a[4,4]=.

2. Правее компонента Edit1 начертим компонент Edit2.В строке Edit2 будут отображаться вводимые с клавиатуры значения элементов матриц А и В согласно «подсказкам» в Edit1. Заметим, что вводимые значения воспринимаются как строки (имеют тип string), поэтому при вводе чисел с клавиатуры следует целую часть числа отделять от дробной символом “,” .

3. Ниже компонента Edit1 начертим компонент Memo1- это многострочный редактор. В окно Memo1 будем выводить вычисленные значения элементов матрицы С. Каждый элемент матрицы С будет выводиться в отдельную строку методом Add (добавить) свойства Lines. Это свойство содержит пронумерованный список строк (нумерация строк начинается с 0).

4. Справа от окна Memo1, соблюдая симметрию, начертим три командные кнопки: Button1, Button2, Button3. Каждая командная кнопка реализует связанный с ней фрагмент программы, записанный в процедуре-обработчике события Click (Щелчок). Под Click (Щелчок) обычно понимают: наведение курсора мыши на кнопку и щелчёк левой кнопкой мыши (в дальнейшем эти действия будем сокращенно записывать ЩЛК).

ЩЛК на кнопке Button1 будет приводить к выполнению процедуры-обработчика события Click, которая реализует:

- преобразование стандартной функцией StrToFloat(Edit2.Text) строкового типа значения элемента массива а (матрицы А), введенного с клавиатуры в строку Edit2.Text, в вещественный тип, и присваивание его элементу массива в памяти ПК;

- отображение введенного значения в окне Memo1 (для контроля правильности ввода);

-проверку условий принадлежности номеров строк и столбцов диапазону [1,4] и реализацию необходимых изменений номеров;

- отображение в строке Edit1.Text “подсказки” для ввода очередного элемента матрицы А.

Заметим, что заголовок этой процедуры-обработчика имеет вид:

procedure TForm1.Button1Click (Sender:TObject);

и задается автоматически системой Delphi.

ЩЛК на кнопке Button2 будет приводить к выполнению процедуры-обработчика события Click, которая реализует аналогичные 4 операции с элементами матриц B и имеет заголовок:

procedure TForm1.Button2Click (Sender:TObject);

ЩЛК на кнопке Button3 будет приводить к выполнению процедуры-обработчика события Click, которая реализует вычисление элементов матрицы С по формуле (7.5) и отображение их в окне Memo1. Delphi автоматически даст этой процедуре заголовок:

procedure TForm.Button3Click(Sender:TObject);

“Очистив” поля текстовых редакторов и изменив заголовки командных кнопок рис.1, получим окно программы (см.рис.2).

Рис. 7.2. Окно программы.