Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
54-62.doc
Скачиваний:
4
Добавлен:
17.04.2019
Размер:
65.02 Кб
Скачать

62. Работа с символьными переменными в Турбо Бейсике: функции space, lcase,ucase.Функции преобразования данных в Турбо Бейсике.

SPACE$(n)

Назначение этой функции - формирование строки из n пробелов, причем п имеет значение в диапазоне от 0 до 255 (для Бейсика) и от 0 до 32767 (для ТВ)

Пример 1. А$= "ВЕС": В$= "Цена"

C$=A$+SPACE$(10) + B$

В строке С$ слова "вес " и "цена" разделяются десятью пробелами.

Функции LCASE$, UCASES

LCASE$(<cTpoKOBoe вьгражение>) - преобразование прописных букв в строчные (только для латинского алфавита);

UCASE$(<cTpoKOBoe выражение>)- преобразование строчных букв строки в прописные (только для латинского алфавита).

В Турбо Бейсике имеются также средства для преобразования данных из одной формы представления в другую- В предыдущих версиях Бейсика эти средства были представлены функциями CDBL, CINT, CSGN, НЕХ$, ОСТ$, STR$, VAL. В Турбо Бейсике дополнительно введены функции BINS и CLNG для получения двоичного представления целого числа (BINS) и преобразования числа к представлению длинного целого числа (CLNG).

CSNG(X) - преобразование числа к представлению с одинарной точностью. Действие функции аналогично использованию оператора присваивания значения переменной одинарной точности: А#= 1.234567890123 PRINT CSNG(A#) Будет напечатано число 1.234568.

VAL(X$) - преобразование строкового выражения в числовое представление. Если первый символ в строке Х$ не цифра и не знак числа, то значение функции - ноль. Пробелы, знаки табуляции и знаки "перевод строки" в значении Х$ игнорируются. Если же строковое выражение Х$ начинается с цифр или со знаков "плюс" или "минус", то также содержит нецифровые символы, то функция формирует число, используя первые цифровые символы, вплоть до появления в строковом выражении нецифровых символов.

Пример. PRINT VAL( "1990 год") - на экране будет выведено значение 1990.

STR$(X) - преобразование числа в строку символов. Функция возвращает строку символов, представляющую собой написание числа, задаваемого арифметическим выражением X. Если преобразуемое значение отрицательно, то первым символом идет минус, в противном случае -пробел.

Пример. К=1

FOR I=10 ТО 13 К=К*I

PRINT SPC (10-LEN(STR$(K))); STR$(K) NEXT I

В этой программе производится выравнивание выводимых чисел по правому

краю, на экране появится:

10

11О

1320

17160

CLNG(X) - преобразование числа к представлению длинного целого числа. Эта функция есть только в ТВ и Q-Бейсике. Значения числового выражения X должно находиться в пределах от - 2*1031 до +2*1031-1. Функция возвращает значение числового выражения, представленное в виде длинного целого числа.

Пример PRINT CLNG (2.35E6) Будет напечатано -2350000.

ВIN$ (X) - получение двоичного представления целого числа. Эта функция есть только в ТВ. Значение числового выражения X находится в пределе от 32678 до 65535. Функция возвращает значение выражения X, округленное до целого.

Пример

PRINT BIN$(125)

Будет напечатано -1111101.

ОСТ$(Х) - получение восьмеричного представления целого числа. Значение числового выражения X - от 32678 до 65535. Функция возвращает восьмеричное представление значения выражения X (округленного до целого).

PRINT "Восьмеричное представление числа 125.7-"; ОСТ$(125.7) Будет напечатано "Восьмеричное представление числа 125.7-176".

НЕХ$ (X) - получение шестнадцатеричного представления целого числа X от 32678 до 65535. Функция возвращает шестнадцатеричное представление выражения X (округленное до целого).

Пример.

PRINT "16-ричное представление числа 125.1-"; НЕХ$(125.1)

Будет напечатано - "16-ричное представление числа 125.1-7Д".

В качестве примера можно также найти шестнадцатеричное представление числа с помощью функции НЕХ$(х):

PRINT НЕХ$(257)

Будет напечатано 101.

Найдем восьмеричное представление того же числа:

PRINT OCT$(257)

Будет напечатано 401.

CINT(X) - преобразование числа к целому типу. Значение аргумента X преобразуется к целочисленному представлению путем округления дробной части. Если значение X выходит за диапазон, допустимый для целых чисел от -32768 до +32768, то выдается сообщение об ошибке.

Пример. REM перевод значения угла из радиальной меры в градусы и минуты.

PI#=4.*ATN(1)

D# = 180./PI#' определение коэффициента перевода

INPUT "угол в радианах"; ALFA

ALFA=ALFA*D#

GRAD=INT (ALFA)' значение градусов

MIN=CINT ((ALFA-GRAD)*60)' значение минут

IF MN=60 THEN GRAD=GRAD+1: MIN=0

REM корректировка результата

PRINT "ALFA="; GRAD; "град"; MIN; "минута"

CDBL (X) - преобразование числа к преставлению с двойной точностью.

Пример.

А%=25; В%=30000

C# = A%/CDBL(B%)

В примере значение переменной В% представлено с двойной точностью, чтобы повысить точность вычислений при выполнении деления.

61. Функция STRING$: назначение, формат и пример использования.

STRING$(n, {X$ | m}),

где n -числовое выражение со значением от 0 до 32767, т- числовое выражение со значением от 0 до 255, Х$-символьное выражение. Функция формирует символьную строку заданной длины п (0<п>255), состоящую из заданного символа. Этим символом может быть первый символ значения заданного символьного выражения (Х$) или символ, ASCII-код которого определяется значением заданного числового выражения m.

Пример 1.

ST$=STRING$(5,"СТРОЧКА")

PRINT ST$+STRING$ (10,45)+STRING$ (5, "C")

Пример 2. A$=STRING$ (5,61) B$=STRING$ (5, "=")

Значение А$ и B$ - одна и та же строка "= = = = =".

60. Функция MID$: назначение, формат и пример использования.

MID$(Х$,n[,m]) | МID$( X$,n[,m]=y$) -эта функция выделяет из строки Х$ m символов, начиная с n-ной позиции( если m опущено, то выделяются вcе символы Х$, начиная с n-го). При использовании этой функции слева oт знака присваивания она заменяет на m первых символов у$( по умолчанию все значения у$) символы выражения Х$, начиная с n-ой позиции. Длина Х$, независимо от m, не меняется.

Пример 1. А$= "Москва, !2!,|3|" МID$(А$, 8)= "Центр, !2 |" Результат будет-» "Москва, Центр, 1"

Пример 2. ST$= "Функция МID$"

NM$=MID$(ST$, 9,4)

MID$(ST$, 9) = "Очень хорошая"

PRINT NM$;"-";ST$

RUN

Ответ:

МID$- Функция Очен

OK

Пример 3.

А$= "строка"

В$=МID$(А$,3,3)

PRINT В$

RUN

РОК

Ок