3. Операции с более высоким приоритетом выполняются раньше операций с меньшим приоритетом. Порядок убывания приоритетов:
· вычисление функции;
· унарная операция смены знака (-);
· *, /, div, mod;
· +, -
4. Несколько записанных подряд операций одинакового приоритета выполняются последовательно слева направо.
5. Часть выражения, заключенная в скобки, вычисляется в первую очередь. (Например, (А + В)*(C - D) - умножение производится после сложения и вычитания).
Не следует записывать выражений, не имеющих математического смысла. Например, деление на нуль, логарифм отрицательного числа и т.п.
Вычисление арифметических выражений производится в соответствии с общеизвестным порядком выполнения арифметических операций (возведение в степень, умножение или деление, сложение или вычитание), которое может изменяться с помощью скобок.
В состав арифметических выражений могут входить переменные числового типа и числа; над переменными и числами могут производиться различные арифметические операции, а также математические операции, выраженные с функциями.
Вот некоторые встроенные математические функции:
· Abs(x) -- абсолютная величина числа х;
· Sqr(x) -- квадратный корень из числа х;
· Fix(x) -- целая часть числа х;
· Int(x) -- наибольшее целое число, не превышающее х.
В языке Visual Basic используются следующие арифметические операции:
|
Операция |
Возвращаемое значение |
|
|
А + В |
Сложение А и В |
|
|
А - В |
Вычитание В из А |
|
|
А * В |
Умножение А на В |
|
|
A/B |
Деление А на В |
|
|
A^B |
A возвести в степень B |
|
|
A mod B |
остаток от целочисленного деления числа A на число B |
|
|
A\B |
целочисленное деление A на B |
|
|
Sqr(x) |
Квадратный корень числа х |
|
|
Sin(x) |
Синус (х в радианах) |
|
|
Cos(x) |
Косинус (х в радианах) |
|
|
Tan(x) |
Тангенс |
|
|
Atn(x) |
Арктангенс |
|
|
Log(x) |
Натуральный логарифм числа х |
|
|
Exp(x) |
Показательная функция |
|
|
Int(x) |
наибольшее целое число, не превышающее число х |
|
|
CInt(x) |
целое число, ближайшее к числу х |
|
|
Fix(x) |
целое число, равное числу х без дробной части |
|
|
Abs(x) |
абсолютное значение числа х |
|
|
Rnd(x) |
случайное число |
Например,
Задача
Составить программу расчета нагрузки скота (гол.) на 1 га пастбищ по формуле:
H=Y/K*D
Где Y - урожай зеленой массы с 1 га пастбища за период, ц;
K - количество пастбищного корма на голову скота в сутки, ц;
D - продолжительность использования пастбища, дн.
Урожай зеленой массы с 1 га пастбища изменяется в пределах от 50 до 80 ц с шагом 1 ц ( K=0,7 ц, D = 30 дн.)
Решение
В данном примере функцией является величина нагрузки скота (гол.) на 1 га, а аргументом - величина урожая зеленой массы с 1 га пастбища.
Для составления программы перейдем от символов в задаче к символам языка Visual Basic:
H >h; Y >u; К >к; D >d
1) Программа расчета величины нагрузки скота (гол.) на 1 га с использованием оператора условного перехода имеет вид:
Show
Print «Расчет величины нагрузки скота (гол.) на 1 га пастбищ»
K*d= InputBox ( “К*D=”)
Let u=50
Metka
Let h =u/k*d
Print u, h
Let u =u +1
If u ‹ = 80 Then Go To Metka
В программе оператор Show делает результаты решения задачи видимыми.
Оператор Print выводит на экран дисплея название программы.
Оператор InputBox осуществляет ввод числового значения K*d (количество пастбищного корма на голову скота в сутки, ц * на продолжительность использования пастбища, дн.).
Оператор Let присваивает переменной u значение 50 (нижний передел изменения урожая зеленой массы с 1 га пастбища за период).
Следующий оператор Let вычисляет значение переменной h (расчет нагрузки количества скота (гол.) на 1 га пастбищ).
Оператор Print выводит на экран дисплея значения переменных u, h (урожай зеленой массы с 1 га пастбища за период, ц и нагрузку скота (гол.) на 1 га пастбищ).
Оператор Let увеличивает значение переменной u на 1 шаг.
Оператор If осуществляет разветвление вычислительного процесса: если u ? 80, то управление передается метке Metka, в противном случае - заканчивается выполнение программы.
2) При использовании операторов цикла программа принимает вид:
Show
Print «Расчет величины нагрузки скота (гол.) на 1 га пастбищ»
K*d= InputBox ( “К*D=” )
For u = 50 To 80 Step 1
Let h =u/k*d
Print u, h
Next u
Цикл в программе организуется с помощью операторов заголовка цикла For…To… Step и конца цикла Next.
В первом вслед за словом For указано начальное значение урожая зеленой массы с 1 га пастбища, за словом Step - шаг изменения количества урожая зеленой массы с 1 га пастбища.
Выход из цикла происходит как только значения переменной u превысит значение 80.
Список литературы
1. Быстрицкая А.Ю., Степанова И.И. Основы программирования на языке Visual Basic 2005.
2. Богданов М.Р. Visual Basic 2005 на примерах. -СПб.: БХВ-Петербург, 2007.
3. Бойко В.В., Савинков В.М. Проектирование баз данных информационных систем. М, 1989.
4. Тиори Т., Фрай Дж. Проектирование структур баз данных. М, 1985.
5. Тихонова А.Ф.. -СПб.: БХВ-Петербург, 2007.
6. Хаббард Дж. Автоматизированное проектирование баз данных. М, 1984.