Программирование немыслимо без всякого рода расчетов. Поэтому во всех языках программирования есть набор встроенных математических функций. Чаще всего их написание (листинг) схож с написанием в реальности. Например, sin a в Бейсике записывается SIN(a).
Все функции имеют следующий формат: сначала пишется название (как в примере с синусом), а в скобках пишется аргумент функции – то значение, к которому эту функцию нужно применить. То есть, если нам нужно вычислить синус 30 градусов и сохранить результат в переменной «а», то сначала необходимо перевести 30 градусов в радианы (180 градусов = числу Пи), а потом записать такое выражение:
a = SIN(3.14 / 6)
где 3.14 / 6 – это 30 градусов, выраженных через число Пи – т.е. угол в радианах
Итак, основные математические функции:
- + : плюс
- - : минус
- * : умножить
- / : делить
- \ : делить нацело
- x MOD y : получить остаток от деления x на y
- ^ x : возвести в степень x
- SQR(x) : вычислить квадратный корень из x
- ABS(x) : получить модуль числа x
- EXP(x) : возвести число e в степень x
- SIN(x) : вычислить синус угла x (здесь и далее x задается в радианах)
- COS(x) : вычислить косинус угла x
- TAN(x) : вычислить тангенс угла x
- ATN(x) : вычислить арктангенс угла x
- FIX(x) : взять целую часть дробного числа x
- INT(x) : взять ближайшее целое, меньшее дробного числа x
- CINT(x) : округлить x
Приведем пример того, как нужно решать задачи.
Задача: Даны стороны прямоугольника a и b. Найти его площадь S = ab и периметр P = 2(a+b).
Решение:
Так как в условии использованы конкретные названия переменных: a, b, S, P, то мы их должны использовать при написании кода. Однако не забываем, что все переменные пишем маленькими буквами.
Нам повезло, что все необходимые формулы даны в условии задачи. Часто бывает, что их необходимо вспоминать из школьного курса или же искать в интернете.
Итак, нам «даны стороны прямоугольника a и b». Если сказано, что они даны, но не указаны их значения, то программа должна их запрашивать у пользователя. Следовательно, мы должны использовать оператор ввода:
INPUT “Vvedite a,b cherez zapyatuyu bez probela ”; a, b
Далее, нам необходимо вычислить то, что от нас просят: площадь и периметр. Формулы нам даны. Следовательно, в код добавляются следующие строки:
s = a * b
p = 2 * (a + b)
Далее необходимо вывести на экран результат. Первый вариант – использовать два оператора вывода:
PRINT “S =”; s
PRINT “P =”; p
Второй вариант – вывести ответ в одну строку:
PRINT “S =”; s, “P =”; p
Для закрепления темы рекомендуем попрактиковаться в решении задач.
Комменты приветствуются, за палец вверх - отдельное спасибо. Удачи!
------------------------------
Список уроков Программирование на Бейсике для начинающих
Следующий урок Работа с символами, строкой, текстом
Предыдущий урок Оператор ввода
------------------------------
Задания
- Дан диаметр окружности d. Найти ее длину L = πd. В качестве значения π использовать 3,14.
- Дана длина ребра куба a. Найти объем куба V = a3 и площадь его поверхности S = 6a2.
- Даны два ненулевых числа. Найти сумму, разность, произведение и частное их модулей.
- Даны катеты прямоугольного треугольника a и b. Найти его гипотенузу c = √(a^2+b^2 )
- Даны две координаты на плоскости (x1, y1) и (x2, y2), причем x1≠x2 и y1≠y2. Найти расстояние между этими точками. Найти периметр и площадь прямоугольника, если учесть что введенные координаты являются его противоположными вершинами, а его стороны параллельны осям координат.
- Даны значения двух переменных a и b. Поменять их значения местами и вывести их на экран.
- Дано число a. Вычислить a8, используя вспомогательную переменную и 3 операции умножения (операцию возведения в степень использовать нельзя). Вывести на экран все промежуточные и итоговое значение.
- Дана масса m в кг. Используя операцию деления нацело найти количество полных тонн.
- Дано двузначное число. С помощью операции деления нацело найти и вывести на экран сначала его левую цифру, потом правую.
- Дано двузначное число. Вычислить сумму и произведение его цифр.
- Дано двузначное число. Получить число, образованное в результате его перестановки слева направо.
- Дано трехзначное число. Вычислить сумму и произведение его цифр.
- Дано трехзначное число. Получить число, образованное в результате его перестановки слева направо.
- Дано целое число, большее 999. Используя одну операцию деления нацело и одну операцию взятия остатка от деления, получить цифру, соответствующую разряду сотен в исходном числе.
- Дано количество секунд, прошедших с начало суток. Вычислить полное количество часов, прошедших с начала суток.
- Дано количество секунд, прошедших с начало суток. Вычислить полное количество минут, прошедших с начала последнего часа.
- Дано число текущего месяца. Определить номер дня недели, если: Первое число месяца пришлось на понедельник. Номера дней недели начинаются с понедельника, т.е. понедельник – 1, вторник – 2, .. воскресенье – 7.
- Дан номер дня года (1..365). Определить номер дня недели, если: 1 января было четвергом. Номера дней недели начинаются с воскресенья, т.е. воскресенье – 0, понедельник – 1 и т.д.
- Даны целые положительные числа a, b и c, где a и b – стороны прямоугольника, c – сторона квадрата. Найти максимально возможное количество квадратов, которое можно разместить в прямоугольнике без наложений друг на друга, а также площадь незанятой части прямоугольника.
- Дано целое положительное число, обозначающее номер года в четырехзначном виде (например, 2022). Определить номер столетия, если учесть, что, например, начало столетия 20 века – год 1901-й, а конец – год 2000-й.