
- •11 Раздаточный материал «Одномерные массивы» подготовлен Шаталовой л.М. Каф. 504
- •1. Ввод одномерного массива с использованием события Edit1KeyPress Исходная форма Форма с результатом
- •Текст программного модуля
- •Interface
- •Implementation
- •2. Ввод массива поэлементно в Edit с нажатием кнопки Button
- •В ид исходной формы
- •Список компонентов и их свойства
- •Текст программного модуля
- •Interface
- •Локальные переменные (procedure tForm1.Button2Click)
- •Implementation
- •Interface
- •Implementation
- •Function getchislo (str : string; n : integer ) string; // str-строка
- •Label5 - вывод массива а
- •Список компонентов и их свойства
- •И вывод массива в строку в компоненты edit и memo
- •Interface
- •Список компонентов
3
// ТЕКСТ
ПРОГРАММЫ
unit
Unit1; uses Windows,
Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, Buttons,
StdCtrls, Spin; type TForm1 =
class(TForm) Label1:
TLabel; Edit1: TEdit; Label2:
TLabel; Label3: TLabel; Memo1:
TMemo; Button1: TButton; BitBtn1:
TBitBtn; SpinEdit1:
TSpinEdit; // страница
SAMPLE Label4: TLabel;
Label5: TLabel;
procedure
Button1Click(Sender: TObject); private
{ Private declarations } public
{ Public declarations } end; var
Form1: TForm1; {$R *.DFM}
//
функция выделения числа из введенной
строки чисел, разделенных пробелом //
N
–номер подстроки, результат - подстрока VAR
P,I : INTEGER; BEGIN FOR
I:=1 TO N-1 DO BEGIN P:=
POS(' ', STR); STR :=
COPY (STR,P+1,LENGTH(STR)-P);
END; P:=POS('
', STR); IF P<>0
THEN RESULT:=COPY(STR, 1, P-1) ELSE
RESULT := STR; END;
//
ПРОЦЕДУРА ВВОДА И ВЫВОДА МАССИВА procedure
TForm1.Button1Click(Sender: TObject); VAR
A : ARRAY [1..10] OF INTEGER; M,
I : INTEGER; begin M:=SPINEDIT1.VALUE; {
ВВОД МАССИВА ИЗ M ЧИСЕЛ} LABEL3.CAPTION
:= ''; FOR
I:=1 TO M DO
BEGIN A[I] :=
STRTOINT (GETCHISLO(EDIT1.TEXT, I)); LABEL3.CAPTION
:= LABEL3.CAPTION
+INTTOSTR(A[I]) + ' '; MEMO1.TEXT:=MEMO1.TEXT
+ ' '+ INTTOSTR(2*A[I]) ; // В
СТРОКУ END; MEMO1.LINES.ADD
('');
end;
end.
// конец
модуля
Unit1Interface
Implementation
Function getchislo (str : string; n : integer ) string; // str-строка
функции пользователя для выделения числа
Создать приложение, позволяющее ввести все элементы
одномерного массива из компонента Edit, используя
специально созданную функцию выделения каждого
числа из строки чисел, разделенных одним пробелом
ИСХОДНАЯ ФОРМА
ФОРМА С РЕЗУЛЬТАТОМ
КОМПОНЕНТЫ:
L
abel1
Label2
Label4 Для поясняющих надписей
Label5 - вывод массива а
Label3 - для вывода массива А
SpinEdit1( SAMPLE) – выбор размерности
Edit1 - ввод массива А
Memo1 - вывод массива 2*А
Button1 -обработка события ВЫВОД
BitBtn1 - завершить программу
Список компонентов и их свойства
object Form1: TForm1
Left = 192 Top = 107
Width = 380 Height = 316
Caption = 'Ввод одномерного массива из Edit через пробел'
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
OldCreateOrder = False
PixelsPerInch = 96
TextHeight = 13
object Label1: TLabel
Left = 8 Top = 48
Width = 343 Height = 13
Caption = '2. Введите массив А через пробел и нажмите кнопку ВЫВЕСТИ А'
end
object Label2: TLabel
Left = 32 Top = 96
Width = 49 Height = 13
Caption = 'Массив А'
Color = clYellow
ParentColor = False
end
object Label3: TLabel
Left = 99 Top = 96
Width = 5 Height = 13
Color = clYellow
ParentColor = False
end
object Label4: TLabel
Left = 8 Top = 16
Width = 225 Height = 13
Caption = '1. Выбери размерность массива А : m <=10'
End
object Label5: TLabel
Left = 8 Top = 120
Width = 109 Height = 13
Caption = 'Удвоенный массив А'
Color = clLime
ParentColor = False
End
object Edit1: TEdit
Left = 8 Top = 64
Width = 337 Height = 21
TabOrder = 0
end
object Memo1: TMemo
Left = 72 Top = 136
Width = 233 Height = 105
Color = clLime
Lines.Strings = (
'')
ScrollBars = ssVertical
TabOrder = 1
end
object Button1: TButton
Left = 8 Top = 256
Width = 97 Height = 25
Caption = 'вывести А и 2*А'
TabOrder = 2
OnClick = Button1Click
end
object BitBtn1: TBitBtn
Left = 280 Top = 256
Width = 75 Height = 25
TabOrder = 3
Kind = bkClose
end
object SpinEdit1: TSpinEdit
Left = 256 Top = 8
Width = 41 Height = 22
MaxValue = 10
MinValue = 1
TabOrder = 4
Value = 1
end
end
4. Ввод одномерного массива из файла с именем D: \ ODN.DAN