- •62. Работа с символьными переменными в Турбо Бейсике: функции space, lcase,ucase.Функции преобразования данных в Турбо Бейсике.
- •59. Функция instr: назначение, формат и пример использования.
- •58. Работа с символьными переменными: функции «вырезки строки». Пример применения.
- •57. Функции преобразования символьных переменных в ascii-коды и наоборот. Пример применения.
- •56. Фактические параметры в процедуре: передача по ссылке и по значению. Пример.
- •55. Особенности функционирования механизма передачи параметров в процедуре и функции в Турбо Бейсике.
- •54. Область действия переменных в процедуре и функции Турбо Бейсика.
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
РОК
Ок