Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка_Delphi_10.doc
Скачиваний:
10
Добавлен:
23.12.2018
Размер:
1.5 Mб
Скачать

5. Разработка приложения с использованием компонента memo при обработке текстовых файлов

Задание: Составить программу записи в файл, добавления данных

в файл и считывание из файла, и найти , где ai - элемент массива, считанный из файла.

При составлении программы использовать исходные массивы в таблице 5.

Т а б л и ц а 5

Исходные массивы

Вар

Исходный массив

1

0; 0; 0; 0,563; 0,98; 1,32; 1,78; 1,94; 2,06; 2,16; 2,24;2,3; 2.34; 2,36; 2,4; 2,42; 2,44.

2

0; 0; 0,56; 0,972; 1,26; 1,46; 1,62; 1,72; 1,8; 1,86; 1,9; 1,92; 1,94.

3

0; 0; 0; 0,46; 0,82; 1,12; 1,36; 1,56; 1,74; 1,88; 1,98; 2,06; 2,16; 2,22; 2,28; 2,32; 2,34; 2,38; 2,4; 2,42; 2,44; 2,46.

4

0; 0; 0; 0; 0,28; 0,32; 0,46; 0,56; 0,64; 0,68; 0,76; 0,8; 0,84; 0,86; 0,88; 0,9;0,92; 0,94; 0,96; 0,98; 1,0.

5

0; 0; 0,2; 0,38; 0,52; 0,66; 0,76; 0,86; 0,94; 1,02; 1,04; 1,06; 1,14;1,16; 1,22;1,26; 1,3; 1.32; 1.34; 1,36; 1.38; 1,40; 1,42; 1,44; 1,46; 1,48; 1,50; 1,52; 1,54.

6

0; 0; 0; 0,54; 0,96; 1,36; 1,64; 1,88; 2,02; 2,26; 2,38; 2.50; 2.52; 2,66; 2,72;2,76; 2,80; 2,82; 2,90; 2,92; 2,94; 2,96.

7

0; 0; 0; 0; 0,36; 0,66; 0.90; 1,1; 1,26; 1,38; 1,50; 1,58; 1,66; 1,72; 1,76; 1,80;1,82; 1,86; 1,90; 1,92; 1,94; 1,96.

8

0; 0; 0; 0,6; 1,12; 1,56; 1,94; 2,28; 2,52; 2,74; 2,94; 3,1; 3,24; 3,36;3,44; 3,54;3,60; 3,66; 3,72; 3,76; 3,80; 3,82; 3,84; 3,86; 3,88; 3,92.

9

0; 0; 0; 0,563; 0,98; 1,32; 1,58; 1,78; 1,94; 2,06; 2,16; 2,24; 2,3; 2.34; 2,36; 2,4;2,42; 2,44.

10

0; 0; 0,56; 0,972; 1,26; 1,46; 1,62; 1,72; 1,8; 1,86; 1,9; 1,92; 1,94.

Рекомендовано к использованию:

Компонент Memo позволяет вводить многострочный текст с клавиатуры, загружать его из файла, редактировать и сохранять в файл текстового формата.

Текст в компоненте Memo размещается построчно. Поэтому имеется доступ к каждой строке текста отдельно. Строки в редакторе Memo являются объектами Lines[i] типа String, где i - номер строки, отсчитываемый от нуля. Объект Lines[i] доступен и для чтения, и для записи.

Содержание отчета: Условие, листинг программы, результат выполнения программы, выводы.

6. Упорядочение массивов. Обработка одномерных динамических массивов

Задание 1: составить программу проверки массива на упорядоченность по возрастанию и в случае необходимости произвести упорядочение. Исходные данные взять из таблицы 6. Вывести на печать листинг программы и результаты в виде исходного и упорядоченного массивов.

Программа должна содержать все требования предыдущих работ.

Указания: Наиболее простой метод из множеств известных состоит в поиске минимального элемента массива. Проверку упорядоченности массива и выполнение операций упорядочения выполнить в виде подпрограмм

Т а б л и ц а 6

Исходные массивы

Вар

Массивы

1

3,75; 1,3; 2; 0,375; 2,71; 12,55; 0,185; 14,7; 350; 1,5; 7,17

2

10,2; 9; 8,25; 1,1; 1,7; 3; 6; 5; 4; 3,7; 8,27

3

-5,25; -3,2; -7,15; 2,27; 0,25; 3,175; 12,8; -4,35; 0,1; 0,5; 7,45

4

12,7; 0,3; 0,25; 17,8; 15,47; 10,81; 2,75; 4,33; 0,85; 0,15; 6,5

5

-1,5; 27,85; 0,27; 1,2; 40,5; 3,85; -0,34; -0,82; 17,6; -0,375; 15

6

277,5; -13,8; 0,25; 18,48; 0,37; 45,45; 137; -17,6; 2,48; 12,35; -12.75

7

425,73; 384,3; -18,25; -0,37; -0,75; 275; 10,4; -5; -4.3; 12,4; 6,18

8

-0,37; 175; -15,75; 6; 7; 18,37; 6,15; 1,35; -4,7; 316; 0,255

9

415; 0,54; -3; -2,75; 0,15; 17,85; 6,7; -7,5; -15,4; 0,86; 1,37

10

752; -15; 16,75; 0,37; 1,35; -1,45; 8,4; 10,37; 43; 17,1; -0,45

Задание 2: Выполнить задание 1, расположив массив в оперативной памяти динамически. Значение N (количество элементов массива) вводится по запросу с клавиатуры.

При описании динамического массива не указывается его размерность. Например, одномерный динамический массив A целого типа и двумерный динамический массив B символьного типа описываются следующим образом:

Var

A: Array of Integer;

B: Array of Array of Сhar;

Для выделения памяти для динамического массива используется функция SetLength:

SetLength(A,10);

SetLength(B,3,3);

Нижняя граница массива всегда равна 0, поэтому верхней границей индексов массива А станет 9, а массива В – 2.

Для освобождения памяти достаточно присвоить индетификатору массива значение NIL или использовать процедуру Finalize. Например:

A:=Nil;

Finalize(B);

Для ввода-вывода массива использовать компонент StringGrid.

Размерность компонента StringGrid должна изменяться в зависимости от переменной N.

Содержание отчета: Условие, листинг программы, результат выполнения программы, выводы.