Занятие 3. Создание простейших функций
Использование функций
Решения всех заданий должны быть оформлены
в виде функций. При выполнении заданий можно пользоваться второй частью
«разговорника».
Все функции определяются перед функцией main. При
этом функции не должны содержать команд ввода-вывода (кроме предназначенных для них). Обращение к функциям, написанным для выполнения задач, а также команды ввода-вывода размещаем в функции main(). В функции main() для выбора нужной задачи удобно пользоваться оператором выбора.
Каждую функцию необходимо комментировать. В
целом следует придерживаться стиля оформления кода (отступов, пробелов,
комментариев и т. п), который дан в «разговорнике».
Задачи
1.
Создать функцию perimeter
, вычисляющую
периметр треугольника по длинам трёх его сторон.
2.
Создать функцию areaFromSides
, вычисляющую
площадь треугольника по длинам трёх его сторон с помощью формулы Герона:
где p означает полупериметр.
3.
[Функция double
mean(int a, int b)
] Вычислить среднее арифметическое двух заданных целых
чисел. Указание: для
того, чтобы деление выполнялось вещественным образом, нужно, чтобы один из
операндов был вещественный, самый простой способ добиться этого в данном случае
— использовать литерал 2.0
в качестве
делителя.
4.
[Функция bool isOdd(int n)
] Проверить,
является ли данное целое число чётным или нечётным, вывести 0 или 1,
соответственно. (операция %
) Указание: не использовать
условные операторы, и константы 0, 1; вывести только значение выражения.
5.
[Функция bool ordered(int a, int b,
int c)
] Даны три целых числа: A, B, C. Вывести значение 1, если справедливо двойное
неравенство A < B < C, и 0 в противном случае. Указание: условный оператор
не использовать.
6.
Написать функцию, которая принимает три целых
числа и печатает «Полученные числа равны: x», где x = 1, если полученные три
числа равны, и x = 0 в противном случае.
Указание: не использовать условный оператор.
7. Даны три целых числа. Вывести значение True, если любые два из них не равны между собой, и False в противном случае. (Операция проверки на неравенство: !=, логическое ИЛИ: ||.)
8.
Написать функцию, возвращающую максимальное из двух переданных
ей вещественных значений.
Указание: воспользоваться условной тернарной операцией ( ?: ).
9.
[Функция double CircleLength(double
r)
]
Вычислить длину окружности заданного радиуса. Для этого перед началом
функции main
объявить глобальную константу
со значением числа π (const double Pi {3.1415926}
).
10. Создать функцию floorQubicRoot,
находящую
наибольшее целое число, которое не превышает кубического корня заданного числа. [pow,
floor]
11. Создать функцию, вычисляющую логарифм заданного числа
по заданному основанию. [log]
12. Написать функцию вещественного аргумента, которая вычисляет значение по следующей формуле:
Указание: пример
оформления условного оператора с несколькими вариантами:
13. Дано двузначное целое число. Вывести его правую и
левую цифры. (Операции %, /)
14. Дано трехзначное число. Поменяйте в нем местами разряды сотен и десятков.
15. Создать функцию random( n ),
которая возвращает
случайное целое число от 0 включительно до целого числа n не включительно. [%, rand из
cstdlib]
16.
Создать функцию random(a, b),
которая возвращает
случайное целое число от целого числа a включительно до целого числа b не
включительно.
17.
Создать функцию random(),
которая возвращает
случайное вещественное число от 0 включительно до 1 не включительно.
18. Сгенерировать случайное вещественное число в диапазоне между 3.5 и 8.2. (Требуется изучить пятый пример из разговорника и приложить воображение.)
- 12 февраля 2018, 00:34