logo
ООП для Заоч / Пинчук Лозовская Программир на С

14.7. Вправи

Вправа 1

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

Вправа 2

Напишіть програму, яка виконує порівняння двох текстових файлів по рядках. Використайте потоки для роботи з файлами, стандартний клас string для збереження прочитаних рядків і функцію getline з модуля syst.h для читання поточного рядка з потоку.

Вправа 3

Функція y=f(x) надана за допомогою таблиці. Напишіть програму, яка обчислює інтеграл

,

де x1, xn - перше і останнє значення x у наданій таблиці. Для обчислення інтегралу застосувати засоби інтерполяції сплайнами та чисельного інтегрування з модулю syst.h .

Вправа 4

Надано інтервал цілих невід’ємних чисел [m,p]. Напишіть програму, яка обчислює середню відстань Хеммінга для бінарних кодів чисел з наданого інтервалу.

Вправа 5

Напишіть функцію, яка обчислює величину кратного інтегралу від довільної наданої функції багатьох змінних. Інтегрування виконується по області D, яка задається предикатом.

.

Тут D є область інтегрування, яка надана предикатною функцією P(x1,x2, … ,xr). Ця функція повертає значення 1 (або true), якщо точка, координати якої відповідають її аргументам, належить до області D. Для обчислення інтегралу застосувати метод Монте-Карло.

Вправа 6

Напишіть функцію, яка визначає час, потрібний для обернення квадратної числової матриці наданого порядку. Час роботи функції видавати у мікросекундах. Застосувати функції set_cpu_fr(), runstimer(), mcstimer() з модулю syst.h.

Вправа 7

Напишіть програму, яка виконує табуляцію функції Ланжевена y=lanj(x) для x[0,2] з кроком 0.1 і результат записує у файл у бінарному вигляді (без форматних перетворень). Далі таблиця повинна зчитуватися з файлу і виводитися на екран. Для програмування операцій з файлом у бінарному режимі застосувати функції biwrite(f,x) і biread(f,x) з модулю syst.h. Для обчислення функції Ланжевена засосувати функцію lanj(x) з цього ж модулю.

Вправа 8

Написати програму, яка обчислює інтеграл

по формулі Сімпсона. Кількість інтервалів - 20. Результат вивести на екран разом з точним значенням інтегралу, яке дорівнює 3/3 . Для обчислення інтегралу застосувати функцію simpson(f,a,b,n) з модулю syst.h.