- •Лабораторная работа 1
- •Постановка задачи:
- •При запуске программы появляется следующее окно:
- •Лабораторная работа 2
- •Постановка задачи:
- •Interface
- •Implementation
- •При запуске программы появляется следующее окно:
- •Лабораторная работа 3
- •Постановка задачи:
- •Interface
- •Implementation
- •При запуске программы появляется следующее окно:
- •После нажатия кнопки «пуск»:
- •Лабораторная работа 4
- •Постановка задачи:
- •Interface
- •Implementation
- •При запуске программы появляется следующее окно:
- •Лабораторная работа 5
- •Постановка задачи:
- •Interface
- •Implementation
- •Лабораторная работа 6 Разработка приложения обработки строковой информации Постановка задачи:
- •Interface
- •Implementation
- •Лабораторная работа 6
- •Постановка задачи:
- •Interface
- •Implementation
- •При запуске программы появляется следующее окно:
- •После и нажатия кнопки «Создать» появляется окно создания нового файла и выбора месторасположения и ввода имени создаваемого файла данных.
- •Лабораторная работа 7
- •Interface
- •Implementation
- •Interface
- •Implementation
- •При запуске программы появляется следующее окно:
- •После нажатия кнопки «пуск»:
- •Лабораторная работа 8
- •Постановка задачи:
- •Interface
- •Implementation
- •X, y, z : real;
- •При запуске программы появляется следующее окно:
- •После нажатия кнопки «Выполнить»:
- •Лабораторная работа 9
- •Постановка задачи:
- •Interface
- •Implementation
- •Interface
- •Implementation
- •Interface
- •Implementation
- •Лабораторная работа №10 сохранение параметров и установок в ini-файлах
- •Interface
- •Implementation
- •Лабораторная работа №11 графические компоненты
- •Interface
- •Implementation
- •Interface
- •Implementation
- •Interface
- •Implementation
- •Лабораторная работа №12 управление программой с помощью панели инструментов
- •Interface
- •Implementation
- •Interface
- •Implementation
- •Interface
- •Implementation
- •Interface
- •Implementation
- •Interface
- •Implementation
- •Interface
- •Implementation
- •Interface
- •Implementation
- •Interface
- •Implementation
- •Лабораторная работа №13 создание многостраничного документа
- •Interface
- •Implementation
- •Лабораторная работа №14 комплексная лабораторная работа
- •Interface
- •Implementation
- •Interface
- •Implementation
- •Interface
- •Implementation
- •Interface
- •Implementation
- •Interface
- •Implementation
- •Interface
- •Implementation
- •Interface
- •Implementation
- •Interface
- •Implementation
При запуске программы появляется следующее окно:
После нажатия кнопки «пуск»:
Выводы: изучили средства отладки программ в среде DELPHI. Составили и отладили программу для циклического вычислительного процесса.
Лабораторная работа 4
Разработка приложения с использованием массивов
Постановка задачи:
Разработать приложение обработки и представления информации в табличной форме в сооветствии с индивидуальным заданием.
В задании скалярные переменные вводить с помощью компонента типа TEdit с соответствующим пояснением в виде компонента типа TLabel. Скалярный результат выводить в виде компонента TLabel. Массивы представлять на форме в виде компонентов TStringGrid, в которых 0-й столбец и 0-ю строку использовать для отображения индексов массивов. Вычисления выполнять после нажатия кнопки типа TButton.
Задание: Определить, является ли заданная квадратная матрица n-го порядка симметричной относительно побочной диагонали.
Текст программы:
unit Unit1;
Interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Grids;
type
TForm1 = class(TForm)
Memo1: TMemo;
StringGrid1: TStringGrid;
Button1: TButton;
Button2: TButton;
Edit1: TEdit;
Label1: TLabel;
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
const
Nmax = 20; // Максимальная размерность массива
type
TMas1 = array[1..Nmax, 1..Nmax] of Extended; // Объявление типа двумерного массива
var
Form1: TForm1;
A : TMas1; // Объявление двумерного массива
N, i, j : integer;
Implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
Memo1.Clear;
Memo1.Lines.Add('Лаб. раб. №4');
N := 3; // Размерность массива
Edit1.Text:= IntToStr(N);
// Задание числа строк и столбцов
StringGrid1.ColCount := N + 1;
StringGrid1.RowCount := N + 1;
// Ввод в левую верхнюю ячейку таблицы названия массива
StringGrid1.Cells[0, 0] := 'Массив';
// Заполнение верхнего и левого столбцов поясняющими подписями
for i:=1 to N do
begin
StringGrid1.Cells[0, i] := 'i='+ IntToStr(i);
StringGrid1.Cells[i, 0] := 'j='+ IntToStr(i);
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
N := StrToInt(Edit1.Text);
// Задание числа строк и столбцов в таблицах
StringGrid1.ColCount := N + 1;
StringGrid1.RowCount := N + 1;
// Заполнение верхнего и левого столбцов поясняющими подписями
for i:=1 to N do
begin
StringGrid1.Cells[0, i] := 'i=' + IntToStr(i);
StringGrid1.Cells[i, 0] := 'j=' + IntToStr(i);
end;
end;
procedure TForm1.Button2Click(Sender: TObject);
var
f : Boolean;
begin
// Заполнение массива A элементами из таблицы StringGrid1
for i:=1 to N do
for j:=1 to N do
A[i, j] := StrToFloat(StringGrid1.Cells[j, i]);
f:=true;
for i:=1 to n do
begin
for j:=1 to n-i do
if a[i,j]<>a[n-i+1,n-j+1] then
begin
f:=false;
break;
end;
if not f then break;
end;
if f then Memo1.Lines.Add('Матрица - симметрична')
else Memo1.Lines.Add('Матрица - не симметрична');
end;
end.
Результат работы программы:
