Функції Завдання 1. Напишіть функцію з ім’ям circarea(), яка обчислює площу круга. Функція повинна приймати один аргумент типу double і повертати значення типу double. У функції main(), потрібно запросити користувача ввести значення радіуса, викликати функцію circarea(), а потім відобразити результат обчислення на екрані. 2. Напишіть функцію power_pi(), яка як аргументи приймає значення типу double для 𝜋 і значення типу int для степеня і повертає значення типу double. Для аргументу, відповідного степеня числа, задайте значення за замовчуванням, рівне 2, щоб при відсутності показника степеня при виконанні функції число π зводилося в квадрат. Напишіть функцію main(), яка запитує у користувача введення аргументів для функції power_pi(), і відображатиме на екрані результати її роботи. 3. Напишіть функцію zeroSmaller(), в яку передаються посилання на два аргументи типу int, присвоюють меншому з аргументів нульове значення. Напишіть програму для перевірки роботи функції. 4. Напишіть функцію, яка приймає в якості аргументів два значення типу Distance і повертає значення найбільшого з аргументів 5. Напишіть функцію з ім’ям hms_to_secs(), що має три аргументи типу int: години, хвилини і секунди. Функція повинна повертати еквівалент переданого їй тимчасового значення в секундах (типу long). Створіть програму, яка буде циклічно запитувати у користувача значення годин, хвилин і секунд і виводити результат роботи функції па екран. 6. Модифікуйте програму, описану у лабораторній роботі №3 «Структури» з типом time. Програма повинна включати в себе дві функції. Перша, time_to_secs(), яка приймає як аргумент значення типу time і повертає еквівалентне значення в секундах типу long. Друга, secs_to_time(), як аргумент приймає число секунд, що має тип long, а повертає еквівалентне значення типу time. 7. Створіть перевантажені функції power() для піднесення в степінь, що приймають в якості аргументу значення типу char, int, long і double. Напишіть програму, яка викликає функцію power() зі всіма типами аргументів. 8. Напишіть функцію з ім'ям swap(), для обміну значеннями двох аргументу типу int. Виберіть потрібний спосіб передачі аргументів. 9. Переробіть програму із завдання 8 так, щоб функція swap()в якості аргументів приймала значення типу time (див. завд. 6). 10. Напишіть функцію, яка при кожному виклику буде виводити на екран кількість разів, яку вона викликалася раніше. Напишіть програму, яка буде викликати цю функцію не менше 10 разів. Спробуйте реалізувати дану функцію двома різними способами: з використанням глобальної змінної та статичної локальної змінної для зберігання числа викликів функції. 11. Напишіть програму, що використовує структуру sterling. Програма повинна отримувати від користувача значення двох грошових сум, виражених в фунтах, шилінгах і пенсах, складати ці значення і виводити результат на екран в тому ж форматі. Необхідно розробити три функції. Перша з них повинна отримувати від користувача число фунтів, шилінгів і пенсів. Друга функція повинна приймати в якості аргументів два значення типу sterling, складати їх і повертати значення, також має тип sterling. Третя функція повинна приймати аргумент типу sterling і виводити його значення на екран. 12. Модифікуйте калькулятор, створений для дробів, так, щоб кожна арифметична операція виконувалася за допомогою функціі. Функції можуть називатися fadd(), fsub(), fmul() і fdiv(). Кожна з функцій повинна приймати два структурних аргументи типу fraction і повертати значення того ж типу