Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Настроювання компонента TSstringGrid






Для установки компонента TStringGrid на форму, необхідно на сторінці Additional меню компонентів клацнути мишею по піктограмі. Після цього клацніть мишею в потрібному місці форми. Захоплюючи краї компонента, відрегулюйте його розмір. В інспекторі об'єктів значення властивостей ColCount і RowCount встановіть 2, а FixedCols і FixedRows встановіть 1. Тому що компоненти StringGrid2 і StringGrid3 мають тільки один стовпчик, то в них: ColCount=1, RowCount=2, FixedCols=0 і FixedRows=1. За замовчуванням у компонент TStringGrid заборонене введення інформації з клавіатури, тому необхідно властивість Options goEditing для компонентів StringGrid1 і StringGrid2 встановити в положення True.

Текст програми приведений нижче.

 

Unit Lab4;

Interface

Uses

Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, Grids;

type

TInputForm = class(TForm)

StringGrid1: TStringGrid;

StringGrid2: TStringGrid;

StringGrid3: TStringGrid;

Label1: TLabel;

Edit1: TEdit;

Button1: TButton;

Button2: TButton;

Procedure FormCreate(Sender: TObject);

Procedure Button1Click(Sender: TObject);

Procedure Button2Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

 

const

Nmax = 10; // Максимальна розмірність масиву

type

Mas1 = array[1..Nmax] of Extended;

//Оголошення типу одномірного масиву

Mas2 = array[1..Nmax, 1..Nmax] of Extended; //Оголошення типу двовимірного масиву

var

InputForm: TInputForm;

A: Mas2; // Оголошення двовимірного масиву

B, Y: Mas1; // Оголошення одномірних масивів

N, i, j: integer;

 

Implementation

{$R *.DFM}

 

Procedure TInputForm.FormCreate(Sender: TObject);

begin

N: = 3; //Розмірність масиву

Edit1.Text: = FloatToStr(N);

//Завдання числа рядків і стовпчиків

StringGrid1.ColCount: = N + 1;

StringGrid1.RowCount: = N + 1;

StringGrid2.RowCount: = N + 1;

StringGrid3.RowCount: = N + 1;

//Введення в ліву верхню комірчину таблиці назви масиву

StringGrid1.Cells[0, 0]: = 'Масив А';

StringGrid2.Cells[0, 0]: = 'Масив В';

StringGrid3.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 TInputForm.Button1Click(Sender: TObject);

begin

N: = StrToInt(Edit1.Text);

//Завдання числа рядків і стовпчиків у таблицях

StringGrid1.ColCount: = N + 1;

StringGrid1.RowCount: = N + 1;

StringGrid2.RowCount: = N + 1;

StringGrid3.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 TInputForm.Button2Click(Sender: TObject);

var

s: extended;

begin

//Заповнення масиву A елементами з тавлиці StringGrid1

for i: =1 to N do

for j: =1 to N do

A[i, j]: = StrToFloat(StringGrid1.Cells[j, i]);

//Заповнення масиву B елементами з тавлиці StringGrid2

for і: =1 to N do

B[і]: = StrToFloat(StringGrid2.Cells[0, і]);

// Множення масиву A на масив B

for i: =1 to N do

begin

s: = 0;

for j: =1 to N do

s: = s + A[i, j]*B[j];

Y[i]: = s;

//Виведення результату в таблицю StringGrid3

StringGrid3.Cells[0, i]: = FloatToStrF(Y[i], ffFixed, 6, 2);

end;

end;

end.

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.