logo
Лекции по информационным технологиям / Лекции_2_семестр

Организация ввода-вывода данных

Ввод значений переменных можно осуществить:

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

Обращение к функции

Описание

StrToInt(S)

Преобразование строки Sв целое число

StrToFloat(S)

Преобразование строки Sв вещественное число. В качестве разделителя используется запятая.

Обращение к процедуре

Описание

Val(S,F,Code)

Преобразование строки Sв переменнуюF, согласно объявленному типу.Code – типInteger. В качестве разделителя используется точка. Значение параметраCode равно нулю, если преобразование прошло успешно

Замечание. Строка S не должна содержать недопустимые для типа символы. В противном случае возникает сообщение об ошибке.

Вывод результатов можно оформить:

Поскольку свойство Text, Caption и параметр ShowMessage имеют типString, то, при выводе числовых данных необходимо использовать следующие функции или процедуры преобразования типов длябезформатного вывода:

Обращение к функции

Описание

FloatToStr(x)

Преобразование вещественного числа xв строку

IntToStr(x)

Преобразование целого числа xв строку

Пример программного кода ввода/вывода числовых данных:

Procedure TForm1.Button1Click(Sender: TObject);

Var

s:real;

s1: integer;

Begin

{Ввод числовых данных}

s:=StrToFloat(Edit1.Text);

s1:=StrToInt(InputBox('Ввод данных','Введите s',''));

{Вывод числовых данных}

Edit2.Text:=FloatToStr(s);

Label1.Caption:=IntToStr(s1);

ShowMessage(FloatToStr(s))

End;

Для вывода чисел по форматуиспользуются:

Например:

Str(F:20:10,S);

Label1.Caption:=S;

Правила использования параметра FormatфункцииFloatToStrF.

Значение Format

Описание

ffExponent

Отображает число в экспоненциальной форме

Precision-общее количество цифр в мантиссе;

Digits-количество цифр в десятичном порядке

ffFixed

Отображает число в формате с фиксированной запятой.

Precision-общее количество цифр;

Digits-количество цифр в дробной части

ffNumber

Отображает число в формате с фиксированной запятой с разделителями групп разрядов при выводе больших чисел

Примеры строк программного кода с выводом чисел по формату:

Строка программного кода

Результат

Edit1.Text:=FloatToStrF(s,ffExponent,8,3);

1,0000780E+004

Edit1.Text:=FloatToStrF(s,ffFixed,8,3);

10000,780

Edit1.Text:=FloatToStrF(s,ffNumber,8,3);

10 000,780