Посилання і параметри-посилання
(низька складність)
Визначте такі функції:
функція square_by_value, яка отримує копію цілочисельної змінної по значенню, обчислює її квадрат і повертає нове значення;
функція square_by_pointer, в якій відбувається передача по посиланню цілочисельної змінної з використанням покажчика на неї, обчислює квадрат вихідної змінної;
функція square_by_reference, в якій відбувається передача по посиланню цілочисельної змінної з використанням її псевдоніму, обчислює квадрат вихідної змінної.
Протестуйте визначені функції.
Визначте такі функції:
функція cube_by_value, яка отримує копію змінної x по значенню, обчислює її куб і повертає нове значення;
функція cube_by_pointer, в якій відбувається передача по посиланню змінної x з використанням покажчика на неї, обчислює куб вихідної змінної x;
функція cube_by_reference, в якій відбувається передача по посиланню змінної x з використанням її псевдоніму, обчислює куб вихідної змінної x.
Тип даних змінної x – число з плаваючою комою одинарної точності.
Протестуйте визначені функції.
Визначте такі функції:
функція triple_by_value, яка отримує копію змінної x по значенню, потроює її та повертає нове значення;
функція triple_by_pointer, в якій відбувається передача по посиланню змінної з використанням покажчика на неї, потроює значення вихідної змінної x;
функція triple_by_reference, в якій відбувається передача по посиланню змінної з використанням її псевдоніму, потроює значення вихідної змінної x.
Тип даних змінної x – число з плаваючою комою подвійної точності.
Протестуйте визначені функції.
Перевантаження функцій
(низька складність)
Визначте перевантажені функції square для знаходження квадратів цілих чисел, чисел з плаваючою комою одинарної та подвійної точності. Протестуйте визначені функції на тестових наборах даних.
Визначте перевантажені функції triple для потроювання значень цілих чисел, чисел з плаваючою комою одинарної та подвійної точності. Протестуйте визначені функції на тестових наборах даних.
Визначте перевантажені функції minimum для знаходження найменшого з трьох цілих чисел, чисел з плаваючою комою одинарної та подвійної точності. Протестуйте визначені функції на тестових наборах даних.
Визначте перевантажені функції maximum для знаходження найбільшого з трьох цілих чисел, чисел з плаваючою комою одинарної та подвійної точності. Протестуйте визначені функції на тестових наборах даних.
(середня складність)
Визначте перевантажені функції power для піднесення до цілого невід’ємного степеня цілих чисел, чисел з плаваючою комою одинарної та подвійної точності. Протестуйте визначені функції на тестових наборах даних.
Визначте перевантажені функції round_value для округлення чисел з плаваючою комою подвійної точності до заданої точності. Точність може бути задана у вигляді цілого числа, що вимагає необхідне число знаків після коми, та у вигляді числа з плаваючою комою у форматі 0,0…01 (наприклад, 0,01 означає округлення до сотих). Протестуйте визначені функції на тестових наборах даних.
(висока складність)
Визначте перевантажені функції power для піднесення до цілого степеня цілих чисел, чисел з плаваючою комою одинарної та подвійної точності. Значення показника степеня може бути від’ємним, нульовим та додатнім. Протестуйте визначені функції на тестових наборах даних.
Визначте перевантажені функції round_value для округлення чисел з плаваючою комою подвійної точності до заданої точності. Точність може бути задана у вигляді цілого числа, що вимагає необхідне число знаків після коми, та у вигляді числа з плаваючою комою у форматі 0,0…01 (наприклад, 0,01 означає округлення до сотих). Передбачте можливість округлення за необхідністю до першої значущої цифри у випадку, якщо округлене до заданої точності число рівне нулю. Протестуйте визначені функції на тестових наборах даних.