Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Quick basic для ПК.doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
552 Кб
Скачать
☆

Статическими называются переменные моего которых в памяти останется неизменным на вес время работы программы. Такими переменными по умолчанию являются все переменные основной программы. Сели необходимо все переменные какой либо процедуры сделать статическими, то надо в заголовке процедуры поставить слово STATIC.

1.8. Задание типа данных

’.Задать тип переменных и констант можно следующим образом;

а) явно задать константу или переменную с помощью суффикса: % -целые; & - целые длинные; ! -вещественные одинарной точности; // -вещественные двойной точности; S - символьные;

б) используя оператор объявления типа данных;

DIZFthii (см. описание);

в) используя опера тор описания переменной DIM (см. описание).

2. Функции

На бейсике различаю! функции встроенные (стандартные) и функции определяемые пользователем (функции пользователя).

Стандартные функции - это программные блоки, встроенные в бейсик, которые по заданным входным параметрам ( аргументам) вычисляют значение функции.

Все функции имеют, как минимум, трехбуквенное обозначение. Аргумент функции всегда записывается в круглые скобки.

2.1. Числовые функции

Числовые функции (ABS, EXP, SQR, LOG, RND, SGN, FIX, INT) предназначены для работы с числовыми величинами. К ним относят и тригонометрические функции.

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

Результат всех числовых функций - число. По умолчанию значение числовой функции представляется числом одинарной точности.

2.1.1. Функция ABS (ABSolute - абсолютное)

  • Y ABS(.X)

  • Вычисление абсолютного значения X (модуля X),

О CI.N : X -5 : Y ABS(X); PRIN T "Y " Y

-на экран монитора выводится У 5 . Аргумент X не мож ет быть символьной переменной, символьной константой или символьным выражением.

9

2.1.2. Функция EXP (KXPoneiU - степень)

  • Y = EXP(X)

  • Вычисление экспоненциальной функции, т.е. числа е (основание натурального логарифма), возведенного в степень X.

О C1.S : X# Ч : Ytt 1 .Х1Ч X ): PRINT YII

■ вычисление числа е с двойной точностью. Ответ - число 2. 7I82HX2S45 (Ю45 V Аргумент X должен быть нс более 88,02969, иначе выдается сообщение об ошибке.

2.1.3. Функция SQR

  • У = SQR(X)

  • Вычисление квадратною корня из X.

0 CLS : P=SQR(25) ; PRINT Р

- на жран монитора выводится чисяо 5.

  • Значение аргумента должно быть неотрицательным, иначе выдается сообщение об ошибке.

V

2.1.4. Функция LOG

  • Y-LOG(X)

  • Вычисление значения натурального логарифма (логарифма но основанию с), те. 1п(Х).

0 CLS : Х=3.718282 : Y - LOG(X-l): PRINT’Y " Y

- выводится Y 1

V Значение аргумента X должно быть больше нуля.

Логарифм по основанию b можно найти, если воспользоваться соотношением:

log ь X = ln(X)/ln(b)

например, выражение lg (29t-4x) записывается на бейсике так: LOG(29*T-4*X)/L.OG(IO)

2.1.5. Функция RND (RaNI)om - случайный)

  • Y КМ)|(.\)|

  • Генерация псевдослучайного вещественного числа из интервала [0,1] с равномерным законом распределения плотности вероятности.

V Аргумент функции влияет на результат вычисления функции RND, так как вычисляемое значение зависит от знака аргумента:

  • если Х=0, то результат функции тот' же, что и в предшествующем обращении к ней, например CLS : PRINT RND(-IO), RND(O)

- выводятся числа .3276443; .3276443 ;

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

10

же базового значения:

CI.S : PRINT RN0(5), RNL), RND(6), RND(O)

  • выводятся 4 псевдослучайных числа: . 7055475: .553424: .5795186: .5795186 При повторном обращении к программе выводятся те же самые числа;

  • если X' 0, то изменяется начальное значение последовательности псевдослучайных чисел, причем она зависит от величины аргумента:

CLS : PRINT RNI)(-7), RND(5), RND, RNI)(6)

выводятся 4 псевдослучайных числа: 8.8525/7-02 ; .5374: . 1104 ; 6. 7833Е-02 При повторном обращении получаются другие числа, если аргумент первой функции (-7) заменить на другое отрицательное число.

Для получения случайных целых чисел в диапазоне от 0 до N можно использовать следующее выражение INT(RND*( N i I))

ПРИМЕР 2.1.1. Составить программу для получения 20 целых случайных чисел, расположенных в интервале |Л,В|.

RANDOMIZE TIMER : CLS : INPUT Л%, B% :

POR I 1 TO 20 : PRINT A% i INT((B% - A% i I )* RND): NEXT

2.1.6. Оператор RANDOMIZE (RANDOMIZE - сделать случайным)

  • RANDOMIZE |nf или RANDOMIZE TIMER

n - целое число из интервала |-32768; 32768]. Если п не указано, то БЕЙСИК прерывает выполнение программы и ждет ввода базового значения на запрос: RANDOM NUMBER SEED (-32768 to 32767)?

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

О CLS : INPUT "it"; N : RANDOMIZE N FOR 1-1 ТО 4 : PRINT RND : NEXT

  • для каждого введенного n генерируется 4 псевдослучайных числа:

Если включить функцию TIMER вместо п, то базовое значение генератора случайных чисел задается автоматически:

CLS : RANDOMIZE TIMER : FOR E l TO 4 : PRINT RND : NEXT

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

V Оператор целесообразней располагать до первого обращения к функции RND.

ПРИМЕР 2.1.2. Составить программу для получения 20 вещественных псевдослучайных чисел, расположенных в интервале [А,В]:

CLS : RANDOMIZE TIMER : INPUT Л. В : FOR II ТО 20 : ?A+(B-A)*RND : NEXT

2.1.7. Функции SGN

  • Y = SGN(X)

  • Вычисление знака аргумен та, т.е. результат функции одно из трех чисел:

Тесни XX); 0, если XX); -Тесли Х<()

0 CLS : FOR I- I ТО .3 : READ X : Y SGN(X) : PRINT Y; : NEXT DATA -8. 0. 8

I I

ctg(x)=l/tg(x);

Csc(x)=l/ sin(x)

arcsm(x)=arc tg(x / sqr(l-x ));

ctg(x)—1 / tg(x)

arccos(x)=l .570796-arc tg(x/sqr( 1-x2));

cosh (x)=( ex + e~x )/2

Sec(x)=l/ cos(x)

sinh (x)= (ex + e"x )/2

12

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