Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Завдання на лабораторні роботи (ред.3.2).doc
Скачиваний:
4
Добавлен:
16.05.2015
Размер:
589.31 Кб
Скачать
  1. Посилання і параметри-посилання

(низька складність)

  1. Визначте такі функції:

  1. функція square_by_value, яка отримує копію цілочисельної змінної по значенню, обчислює її квадрат і повертає нове значення;

  2. функція square_by_pointer, в якій відбувається передача по посиланню цілочисельної змінної з використанням покажчика на неї, обчислює квадрат вихідної змінної;

  3. функція square_by_reference, в якій відбувається передача по посиланню цілочисельної змінної з використанням її псевдоніму, обчислює квадрат вихідної змінної.

Протестуйте визначені функції.

  1. Визначте такі функції:

  1. функція cube_by_value, яка отримує копію змінної x по значенню, обчислює її куб і повертає нове значення;

  2. функція cube_by_pointer, в якій відбувається передача по посиланню змінної x з використанням покажчика на неї, обчислює куб вихідної змінної x;

  3. функція cube_by_reference, в якій відбувається передача по посиланню змінної x з використанням її псевдоніму, обчислює куб вихідної змінної x.

Тип даних змінної x – число з плаваючою комою одинарної точності.

Протестуйте визначені функції.

  1. Визначте такі функції:

  1. функція triple_by_value, яка отримує копію змінної x по значенню, потроює її та повертає нове значення;

  2. функція triple_by_pointer, в якій відбувається передача по посиланню змінної з використанням покажчика на неї, потроює значення вихідної змінної x;

  3. функція triple_by_reference, в якій відбувається передача по посиланню змінної з використанням її псевдоніму, потроює значення вихідної змінної x.

Тип даних змінної x – число з плаваючою комою подвійної точності.

Протестуйте визначені функції.

  1. Перевантаження функцій

(низька складність)

  1. Визначте перевантажені функції square для знаходження квадратів цілих чисел, чисел з плаваючою комою одинарної та подвійної точності. Протестуйте визначені функції на тестових наборах даних.

  2. Визначте перевантажені функції triple для потроювання значень цілих чисел, чисел з плаваючою комою одинарної та подвійної точності. Протестуйте визначені функції на тестових наборах даних.

  3. Визначте перевантажені функції minimum для знаходження найменшого з трьох цілих чисел, чисел з плаваючою комою одинарної та подвійної точності. Протестуйте визначені функції на тестових наборах даних.

  4. Визначте перевантажені функції maximum для знаходження найбільшого з трьох цілих чисел, чисел з плаваючою комою одинарної та подвійної точності. Протестуйте визначені функції на тестових наборах даних.

(середня складність)

  1. Визначте перевантажені функції power для піднесення до цілого невід’ємного степеня цілих чисел, чисел з плаваючою комою одинарної та подвійної точності. Протестуйте визначені функції на тестових наборах даних.

  2. Визначте перевантажені функції round_value для округлення чисел з плаваючою комою подвійної точності до заданої точності. Точність може бути задана у вигляді цілого числа, що вимагає необхідне число знаків після коми, та у вигляді числа з плаваючою комою у форматі 0,0…01 (наприклад, 0,01 означає округлення до сотих). Протестуйте визначені функції на тестових наборах даних.

(висока складність)

  1. Визначте перевантажені функції power для піднесення до цілого степеня цілих чисел, чисел з плаваючою комою одинарної та подвійної точності. Значення показника степеня може бути від’ємним, нульовим та додатнім. Протестуйте визначені функції на тестових наборах даних.

  2. Визначте перевантажені функції round_value для округлення чисел з плаваючою комою подвійної точності до заданої точності. Точність може бути задана у вигляді цілого числа, що вимагає необхідне число знаків після коми, та у вигляді числа з плаваючою комою у форматі 0,0…01 (наприклад, 0,01 означає округлення до сотих). Передбачте можливість округлення за необхідністю до першої значущої цифри у випадку, якщо округлене до заданої точності число рівне нулю. Протестуйте визначені функції на тестових наборах даних.