- •Інститут землевпорядкування та інформаційних технологій Кафедра геоїнформаційних систем, землевпорядкування та кадастру
- •"Алгоритмічні мови та програмування"
- •2. Запрограмуйте обчислення коренів рівняння
- •Int m[200]; //дано
- •Int m[200]; //дано
- •Int m[200]; //дано
- •Int maxA, maxB;
- •Int midA, midB;
- •Void MyFuncion(int *a, int *b, int n);
- •Void MyFuncion(int *f, double a, double b, double c,
- •Int m[200]; //дано
Інститут землевпорядкування та інформаційних технологій Кафедра геоїнформаційних систем, землевпорядкування та кадастру
Завдання для контрольної роботи з дисципліни
"Алгоритмічні мови та програмування"
для студентів заочного навчання
Київ 2009
Контрольна робота з курсу "Алгоритмічні мови та програмування"
Для виконання контрольної роботи необхідно написати тексти програм комп’ютерною мовою С++. Контрольна робота містить декілька завдань
Завдання.
1. Запрограмуйте обчислення коренів рівняння
ax2 + bx + c = 0,
п о формулі
В програмі необхідно передбачити, коли b2-4ac < 0. Для обчислення кореня використайте функцію sqrt() стандартної бібліотеки math.
2. Запрограмуйте обчислення коренів рівняння
x2 + px + q = 0,
п о формулі
В програмі необхідно передбачити, коли p2/4 - q < 0. Для обчислення кореня використайте функцію sqrt() стандартної бібліотеки math.
3. Запрограмуйте перемноження матриць С = AB згідно формулі
int C[10][10], A[10][10], B[10][10]; //дано
. . . . . . //рішення
4. Запрограмуйте обчислення многочлена
A = a n x n + a n-1 x n-1 + a n-2 x n-2 + . . . + a 1 x + a 0
по схемі Горнера
A = (( ... (a n x + a n-1) x + a n-2) x + . . . + a 1) x + a 0
Коефіцієнти a i можуть зберігатися в масиві.
double A, x;
double a[10]; //дано
. . . . . //рішення
5. Запрограмуйте обчислення коефіцієнтів бінома Ньютона
6. Запрограмуйте обчислення факторіала n! = 1 · 2 · 3 · …· (n-1) · n.
7. Знаходження мінімального позитивного (> 0) елемента масиву M[ ].
int M[100]; //дано
. . . . . . //рішення
8. Знаходження максимального від’ємного (< 0) елемента масиву M[ ].
int M[200]; //дано
. . . . . . //рішення
9. Знаходження двох максимальних елементів масиву M[ ].
Int m[200]; //дано
. . . . . . //рішення
10. Знаходження двох мінімальних елементів масиву M[ ].
Int m[200]; //дано
. . . . . . //рішення
11. Обчислення суми елементів масиву M[ ].
Int m[200]; //дано
. . . . . . //рішення
Передбачити можливе переповнення розрядної сітки.
12. Обчислення середнього арифметичного значення елементів масиву M[ ].
int M[500]; //дано
. . . . . . //рішення
13. Обчислення добутку елементів масиву M[ ].
int M[10]; //дано
. . . . . . //рішення
Передбачити можливе переповнення розрядної сітки.
14. Обчислення кількості позитивних (> 0) елементів масиву M[ ].
int M[3000]; //дано
. . . . . . //рішення
15. Обчислення кількості від'ємних (< 0 ) елементів масиву M[ ].
int M[3000]; //дано
. . . . . . //рішення
16. Заміна позитивних (> 0) елементів масиву M[ ] на 0.
int M[2000]; //дано
. . . . . . //рішення
17. Заміна від'ємних (< 0 ) елементів масиву M[ ] на 0.
int M[2000]; //дано
. . . . . . //рішення
18. Циклічний зсув елементів масиву M[ ] вправо:
19. Циклічний зсув елементів масиву M[ ] вліво:
20. Переворот масиву M[n] для довільного n :
поміняти місцями M0 та Mn-1 ;
поміняти місцями M1 та Mn-2 ;
поміняти місцями M2 та Mn-3 ;
і так далі.
21. Сортування масиву - переміщення елементів так, щоб найменший елемент був першим [0]. а найбільший зайняв останню позицію - [n-1]. Наприклад:
M[6]: 6 7 5 3 10 1 --> 1 3 5 6 7 10
Запрограмувати простий алгоритм сортування, згідно якого виконується декілька циклів переміщень сусідніх елементів масиву. В одному циклі виконуються такі операції: послідовно перевіряються значення пар сусідніх елементів (Mi, Mi+1), і якщо Mi > Mi+1, то ці елементи міняються містами. Після першого циклу максимальний елемент обов'язково займе останнє місце, після другого - наступний елемент займе передостанню позицію, і так далі. В першому циклі обробляються всі n елементів, в другому циклі - n-1, в останньому циклі обробляються два перших елементи.
22. Запрограмувати алгоритм сортування для попереднього завдання, вдосконаливши його таким чином - якщо впродовж будь-якого циклу обробки пар елементів не потрібно було переміщувати елементи, то завершити сортування.
23. Розробити функцію пошуку максимального елемента в масивах довільного розміру.
int A[1000], B[200];