Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Взаимное преобразование текстовых и арифметических значений



Данные процедуры позволяют прямые и обратные преобразования.

Процедура getint. Процедура разыскивает в текстовом значении первую запись целого числа, т.е. последовательность цифр, перед которой может стоять любое количество пробелов и знак. Если в тексте первой записью не является последовательность цифр, перед которой стоит любое количество пробелов и знак, то обращение к данной процедуре приведет к ошибке, указатель позиции принимает значение на единицу больше, чем последний символ найденной записи.

Процедура getreal. Данная процедура разыскивает в тексте запись целого или вещественного значения с десятичной точкой и/или с указанием порядка (порядок представляет с помощью символа Е).

Следующие процедуры служат обратной цели – преобразованию арифметических символов в текстовые. Процедуры заполняют указанный текст полученной записью числа, отредактированная запись числа выравнивается по правому краю, если в тексте слева остается свободное место, то оно заполняется пробелами. Указатель позиции после редактирования принимает значение t. length +1, если длина текста недостаточна, то выдается сообщение об ошибке.

Процедура putint. Процедура putint (k) преобразует целое число k в символьный вид целого числа.

Процедура putfix. Процедура putfix (r,n) преобразует число r в символьный вид числа с фиксированной точкой, число n указывает число символов после точки.

Процедура putreal. Процедура putreal (r,m) формирует запись числа следующего вида:

<знак>d.dd…ddE<знак>dd

Если m =0, то перед Е устанавливается знак числа только в том случае, если число отрицательное. Если m =1, то перед символом порядка ставится запись целого, состоящего из одной цифры, если m >1,то в дробной части записывается m -1 цифра.

text t1,t2,t3,t4,t5;

integer c;

real a,b;

t1:- text (' -128,5+6,17e1')

t2:- blanks (5);

t3:- blanks (6);

t4:- blanks (11);

t5:- t1. sub (9,7);

c:= t1. getint;

a:= t1. getreal;

b:= t5. getreal;

t2. putint (c);

t3. putfix (b,2);

t4. putreal (a,3);

В результате выполнения данного примера получим следующие значения: с =128; a =128,5; b =+6,17E1; t2 =' -128'; t3 ='61,70'; t4 =' -12,85E+01'.





Дата публикования: 2015-01-23; Прочитано: 151 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.006 с)...