Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
инфа met-2008-qb.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
267.26 Кб
Скачать

Определение нестандартных функций оператором def fn.

Общий вид оператора

DEF FNV(<аргументы>) = <арифметическое выражение>,

где V - имя функции; <аргументы> - простые переменные - формальные аргументы функции; <арифметическое выражение> - формула, по которой вычисляется функция.

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

Оператор DEF FN должен располагаться в программе до первого использования определяемой им функции.

Вычисление функции, описанной оператором DEF FN, осуществляется при обращении к ней при помощи записи указателя функции

FNV (<арифметические выражения>) ,

где <арифметические выражения>, заменяют формальные параметры в арифметическом выражении правой части оператора DEF FN перед вычислением.

Пример 2. Вычислить значение функции

, где .

Здесь m - номер варианта, n –номер группы.

QuickBASIC - программа для примера 2:

REM LR-1-2, m=13, n=5

DEF fnf(x,y) = cos(x^2+y^2)

INPUT m, n

z=(fnf(m/n, -2*n)+ fnf(3*(m+n), -5.5*m))/2/(m+n)

PRINT “z=”; z

END

2.5.2. Программы разветвляющейся структуры

на языке QuickBASIC.

Для составления разветвляющихся программ используются операторы безусловной и условной передачи управления (см. рис. 2.2). В разветвляющихся вычислительных процессах последовательность выполнения операций заранее не определена и ставится в зависимость от результатов проверки заданных условий.

Оператор безусловного перехода. Общий вид оператора

GO TO N,

где N метка. Этот оператор передает управление первому оператору в строке с меткой N.

Условные операторы. Условные операторы служат для изменения порядка выполнения операторов в зависимости от какого - либо условия.

Условные операторы могут использоваться для организации циклов и разветвлений.

Общий вид условных операторов

1) IF «условие» THEN (или GO TO) N;

2) IF «условие» THEN «действие»;

3) IF «условие» THEN «действие 1» ELSE «действие 2»;

4) IF «условие 1» THEN

«Блок

ELSEIF «условие 2» THEN

«Блок

. . .

ELSE

«Блок K»

ENDIF

где условие имеет вид

(арифметическое выражение 1) θ (арифметическое выражение 2)

θ - одна из операций отношения <, <=, >, >=, =, <>;

N - метка; действие - любой оператор QuickBASICа, в том числе это может быть другой условный оператор.

Сочетание THEN IF позволяет "вкладывать" условия друг в друга. Например,

IF Q >= 3.5 THEN IF Q < 7.4 THEN 20

Действие условного оператора заключается в следующем:

если условие удовлетворяется, то в первом случае осуществляется переход к строке с меткой N=20, во втором и в третьем случаях выполняется оператор, следующий за THEN.

Если условие не удовлетворяется, то в первом случае осуществляется переход к оператору, следующему за условным. Во втором случае осуществляется переход к первому оператору следующей строки,

т. е. все операторы в строке, следующие за условным оператором, при этом игнорируются. В третьем случае выполняется действие, записанное после ключевого слова ELSE.

Возможна одновременная проверка нескольких условий, соединенных словами:

OR - условие считается выполненным, если выполняется хотя бы одно из проверяемых условий;

AND - условие выполнено, если выполняются все проверяемые условия одновременно;

XOR - условие выполнено, если выполняется ровно одно из двух проверяемых условий.

Пример 3. Вычислить

где .

Начало

Ввод m, n

X<0

y=x +3x-7

да

нет

да

X≥1

y=e

нет

y=2x-1