Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторки 1-6 по Delphi.pdf
Скачиваний:
39
Добавлен:
08.04.2015
Размер:
1.09 Mб
Скачать

Языки программирования

end; end;

Щелчок по пункту меню активирует диалог открытия файла. В диалоговом окне пользователь выбирает для просмотра любой файл. Данные из файла считываются в массив, состоящий из 16 ячеек. Затем, после нумерации строк и несложного форматирования, текст построчно передается в компонент Memo1. Операция считывания повторяется вновь до тех пор, пока не доберется до конца файла.

Программа почти готова. Нам осталось написать 3 строки кода в обработчике события OnShow() формы проекта (листинг 6.5).

Листинг 6.5. Настройка многострочного редактора и диалога открытия файла

procedure TForm1.FormShow(Sender: TObject); begin

Memo1.Font.Name:='Courier New'; Memo1.ReadOnly:=True;

OpenDialog1.Filter:='Все файлы|*.*'; end;

Вам осталось откомпилировать проект и попробовать его в работе на каком-нибудь небольшом файле (рис. 6.2).

Рис. 6.2. Утилита просмотра файлов в шестнадцатеричном формате

Задание

Разработайте приложение на основе класса TFileStream обеспечивающее следующий функционал

Вариант 1.

1.Заполнение файла A размерности N (указывается пользователем) случайными целыми числами в диапазоне от 0 до 255.

64

СКФУ Кафедра компьютерной безопасности

Языки программирования

2.Разделение файла A на файлы B и C. Причём в файл B должны попасть только чётные значения из A, а в B — нечётные.

3.Сохраните содержимое файла A в файл D так, чтобы его значения следовали в обратном порядке.

4.Напишите функцию на вход которой поступает полный путь и имя файла, и возвращающую сумму значений элементов файла.

Вариант 2.

1.Заполнение файла A размерности N (указывается пользователем) случайными вещественными числами в диапазоне от -1 до 1.

2.Разделение файла A на файлы B и C. Причём в файл B должны попасть только отрицательные значения из A, а в B — положительные.

3.Сохраните содержимое файла A в файл D так, чтобы его значения следовали в обратном порядке.

4.Напишите функцию, на вход которой поступает полный путь и имя файла, и возвращающую сумму значений элементов файла.

Вариант 3.

1.Заполнение файла A размерности N (указывается пользователем) случайными строчными символами латинского алфавита (1-битная кодировка ANSI).

2.Разделение файла A на файлы B и C. Причём в файл B должны попасть только символы из A обозначающие гласные буквы, а в B — согласные.

3.Сохраните содержимое файла A в файл D так, чтобы его значения следовали в обратном порядке.

4.Напишите функцию, на вход которой поступает полный путь и имя файла, и возвращающую число гласных символов в файле.

Вариант 4.

1.Заполнение файла A размерности N (указывается пользователем) случайными строчными символами русского алфавита (1-битная кодировка

ANSI).

2.Разделение файла A на файлы B и C. Причём в файл B должны попасть только символы из A обозначающие гласные буквы, а в B — согласные.

3.Сохраните содержимое файла A в файл D так, чтобы его значения следовали в обратном порядке.

4.Напишите функцию, на вход которой поступает полный путь и имя файла, и возвращающую число гласных символов в файле.

65

СКФУ Кафедра компьютерной безопасности

Языки программирования

Вариант 5.

1.Заполнение файла A размерности N (указывается пользователем) случайными булевыми значениями (boolean).

2.Сохраните содержимое файла A в файл D так, чтобы его значения следовали в обратном порядке.

3.Инвертируйте содержимое файла A и сохраните его в файл E.

4.Напишите функцию, на вход которой поступает полный путь и имя файла, и возвращающую число гласных символов в файле.

66

СКФУ Кафедра компьютерной безопасности