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

§ 8 Ввод и вывод данных

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

Ввод данных из окна ввода осуществляется с использованием функции InputBox, возвращаемым значением которой является строка, введённая пользователем. Выражение для ввода должно быть записано следующим образом:

Переменная:= InputBox (Заголовок, Подсказка, Значение);

Где

Переменная – имя переменной строкового типа, значение которой должно быть получено из окна ввода.

Заголовок – текст заголовка окна ввода.

Подсказка – текст поясняющего сообщения.

Значение – текст, находящийся в поле ввода в момент появления окна ввода на экране.

Вывод результата через окно сообщения осуществляется либо с использованием процедуры ShowMessage, либо функции MessageDlg. В общем виде вызов процедуры ShowMessage имеет следующий вид: ShowMessage (Сообщение) . Здесь Сообщение – любая величина строкового типа. Процедура MessageDlg позволяет наряду с сообщением вводить в окно сообщения подсказку, кнопки, справку. Более подробно использование этой функции будет рассматриваться ниже. Фрагмент программы, включающий ввод длины одной из сторон треугольника, и вывод сообщения имеет вид.

var a:string;

begin

a:=InputBox('Расчёт площади','Введите длину стороны А в метрах','');

ShowMessage('Длина стороны А равна'+ #13 + a + ' метров');

end;

Окна ввода и вывода информации имеют вид:

Рис.6-3

Ч

ерез окно ввода или окно сообщения можно вывести только одно сообщение. Заголовок окна сообщения – название проекта, под которым он сохранён в памяти ПК. Окна ввода и окна сообщений удобно использовать при необходимости ввести или вывести одно данное. Если же, как, например, в случае расчёта площади треугольника, необходимо ввести несколько данных, удобнее использовать окна диалога, аналогичные окну программы «Приветствие», процесс создания которой рассматривался выше. Для создания заголовка окна, изменяем свойство caption исходной формы и присваиваем ему значение «Площадь треугольника». В верхней части окна создаём метку (элемент Label1) и, изменяя её свойство caption, создаём надпись «Треугольник задаётся длинами трёх сторон». Затем вводим в форму 3 окна редактирования (элементы Edit1-3). Поля редактирования предназначены для ввода длин сторон треугольника. Поэтому над с использованием меток (элементы Label2-4) создаём поясняющие надписи «Сторона А», «Сторона В», «Сторона С». В нижней части формы создаём 3 кнопки «Вычислить», «Новый», «Завершить». Процессы создания кнопок не отличается от процесса создания кнопки в окне программы «Приветствие». Очевидно, в окна редактирования следует ввести значения длин сторон. Щелчок мышью по кнопке «Вычислить» должен сопровождаться вычислением площади треугольника. Кнопка «Новый» используется для ввода новых данных. Кнопка «Завершить» закрывает окно диалога. Следует иметь в виду, что информация, внесенная в поля редактирования, имеет строковый тип даже, если она состоит только из цифр. Поэтому перед выполнением расчётов её необходимо преобразовать в числа с использованием функций StrToInt или StrToFloat. Например, а1:= StrToFloat(а). Здесь а1 – вещественное число, а – строка цифр с десятичным разделителем. Фрагмент программы расчёта площади имеет вид:

var

a,b,c:integer;

p,s:real;

begin

a:=StrToInt(Edit1.Text);

b:=StrToInt(Edit2.Text);

c:=StrToInt(Edit3.Text);

p:=(a+b+c)/2;

s:=sqrt(p*(p-a)*(p-b)*(p-c));

ShowMessage('ПЛОЩАДЬ ТРЕУГОЛЬНИКА РАВНА' + #13 + FloatToStr(s/10000)+' га')

end;

Окна ввода и вывода информации приведены на рис. 6-4.

Р

ис. 6-4.

Если пользователь желает ограничить количество десятичных знаков в окне сообщения, он имеет возможность использовать форматный вывод с использованием функции FloatToStrF. FloatToStrF(s/10000,ffFixed,5,3) выводит пятизначное число, содержащее 3 знака после запятой. В случае необходимости пользователь имеет возможность многократно повторять расчёт. Кнопка «Новый» очищает поля редактирования от ненужной информации, присваивая свойству «Text» каждого из полей значение «‘’». Щелчок мыши по кнопке «Завершить» сопровождается закрытием окна программы с использованием команды Form1.Close.

Задание. Получить у преподавателя 2-ю индивидуальную задачу и создать программу её решения. Ввод исходных данных и вывод результата выполнить с использованием окон ввода и окон редактирования.

Отчёт по данной работе должен включать перечень использованных визуальных компонентов, описание свойств компонентов, изменённых при создании формы или изменяемых в процессе выполнения программы, описание событий, изменяющих ход выполнения программы, описание использованных в программе констант и переменных (указать их типы и диапазоны изменения) и стандартных функций, распечатку процедуры обработки каждого из указанных событий.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]