- •З м і с т
- •Частина 1. Алгоритмізація задачі Порядок виконання лабораторних робіт
- •Зміст звіту
- •Основні принципи розробки алгоритмів
- •Лабораторна робота 1 алгоритмізАцІя лінійного, розгалуЖеного Та циклічного обчислювального процесу
- •Загальні вказівки
- •Завдання для самостійної роботи
- •Знаходження екстремального значення
- •Формування одномірного робочого масиву
- •Сортування елементів масиву
- •Лабораторна робота 2 селективна обробка масивів
- •Загальні вказівки Селективна (вибіркова) обробка інформації
- •Завдання для самостійної роботи
- •Лабораторна робота 3 вкладені цикли. Обробка двовимірних масивів
- •Загальні вказівки Вкладені цикли
- •Обробка заданого рядка (стовпця) матриці
- •Обробка заданої діагоналі матриці
- •Селективна обробка рядка (стовпця) матриці, що задовольняє заданій умові
- •Завдання для самостійної роботи
- •Частина 2. Складання і налагодження програми. Обчислення й обробка результатів Порядок виконання лабораторних робіт
- •Зміст звіту
- •Оператор привласнювання
- •Оператори уводу-виводу
- •Завдання до лабораторної роботи
- •Лабораторна робота 2 програмування розгалуЖеного обчислювального процесу
- •Структура Паскаль–програми
- •Умовний оператор
- •Завдання до лабораторної роботи
- •Лабораторна робота 3
- •Завдання до лабораторної роботи
- •Програмування розгалуЖеного циклічного обчислювального процесу. Табулювання функцій
- •Табулювання функцій
- •Завдання до лабораторної роботи
- •Лабораторна робота 5 нестандартні й обмежені типи даних. Оператор варіанта
- •Нестандартні типи даних
- •Обмежені типи даних
- •Оператор вибору варіанта
- •Оператор циклу for
- •Приклади виконання завдання лабораторної роботи
- •Завдання до лабораторної роботи
- •Лабораторна робота 6 регулярні типи даних. Селективна обробка масивів
- •Регулярні типи даних
- •Приклади виконання завдання лабораторної роботи
- •Завдання до лабораторної роботи
- •Лабораторна робота 7 формування робочих масивів за допомогою операцій селекції вихідного масиву
- •Сортування масивів
- •Завдання до лабораторної роботи
- •Лабораторна робота 8 вкладені цикли. Обробка двовимірних масивів
- •Загальні вказівки
- •Завдання до лабораторної роботи
- •Лабораторна робота 9 процедури і функції
- •Процедури
- •Функції
- •Завдання до лабораторної роботи
- •Лабораторна робота 10 обробка символьних даних
- •Символьний тип даних
- •Завдання до лабораторної роботи
- •Лабораторна робота 11 обробка строкових даних
- •Строковий тип даних
- •Процедури
- •Функції
- •'Abcdef' copy(s,2,3) 'bcd';
- •'System' length(s) 6;
- •Завдання до лабораторної роботи
- •Лабораторна робота 12 комбіновані типи даних
- •Приклади виконання завдання лабораторної роботи
- •Завдання до лабораторної роботи
- •Лабораторна робота 13 файли і файлові типи даних
- •Файловий тип даних
- •Процедури обробки файлів
- •Завдання до лабораторної роботи
- •Список рекомендованої літератури
Завдання до лабораторної роботи
Нехай D - заштрихована частина площини (рис. 2) і нехай Z визначається через x і y у такий спосіб (запис (x, y) D означає, що точка з координатами x, y належить ділянці D):

Дано два числа x, y. Складіть програму для визначення Z. Вид функцій f1 і f2 заданий у таблиці 15.
Таблиця 15
|
Варі-ант |
f1(x,y) |
f2(x,y) |
Ділянка (рис.2) |
|
1 |
|
|
а |
|
2 |
|
|
б |
|
3 |
|
|
в |
|
4 |
|
|
г |
|
5 |
|
|
д |
|
6 |
|
|
е |
|
7 |
|
|
ж |
|
8 |
|
|
к |
|
9 |
|
|
л |
|
10 |
|
|
м |
|
11 |
|
|
н |
|
12 |
|
|
п |
Продовження таблиці 15
|
Варі-ант |
f1(x,y) |
f2(x,y) |
Ділянка (рис.2) |
|
13 |
|
|
а |
|
14 |
|
|
б |
|
15 |
|
|
в |
|
16 |
|
|
г |
|
17 |
|
|
д |
|
18 |
(y-x)cosx |
|
е |
|
19 |
|
|
ж |
|
20 |
|
Sin(arctg(x3)) |
к |
|
21 |
e|x-y| |
Ln|x|+tg(y2) |
л |
|
22 |
|
|
м |
|
23 |
|
y3ln(x2+4) |
н |
|
24 |
|
|
п |
|
25 |
|y|x+cos2(x/2) |
1/(x2+y) |
а |
|
26 |
yx+y+cos2(x+y) |
Ln|x+y3| |
б |
|
27 |
|
|
в |
|
28 |
|
|
г |
|
29 |
|
|
д |
|
30 |
|
|
е |

Лабораторна робота 3
ПРОГРАМУВАННЯ ЦИКЛІЧНОГО ОБЧИСЛЮВАЛЬНОГО ПРОЦЕСУ. ІТЕРАЦІЙНИЙ ЦИКЛ
Мета роботи: виробити практичні навички в складанні алгоритмів, написанні та налагодженні програм на циклічний обчислювальний процес, зокрема, ітераційний цикл.
Оператор циклу while
«Цикл - поки» з перевіркою умови на початку циклу має вид:
while A do P;
Тут А - логічний вираз; P - простий чи складений оператор. Оператор P виконується доти, поки логічний вираз істинний.
Наприклад:
z:=-5;
while z 0 do
begin
y: = y + sqrt(z);
z: = z - 1
end;
Оператор циклу repeat
«Цикл - поки» з перевіркою умови наприкінці циклу має вид
repeat P until A;
Тут Р - група операторів; А - логічний вираз. Оператор циклу повторює групу операторів доти, поки не стане істинним (true) булевський вираз A.
Наприклад:
z:=-5;
repeat
y: = y + sqrt(z); z: = z - 1
until z < 0;
Оператор безумовного переходу
Загальний вид - goto N;
Мітка N, на яку передається керування, має бути описана в розділі label. Мітку можна поставити перед будь-яким оператором, відокремивши її двокрапкою.
Приклад виконання завдання лабораторної роботи
Приклад 19. Обчислити суму членів ряду
![]()
з точністю до члена ряду за абсолютною величиною, меншого за =10-5. Максимальне число ітерацій n=25.
Установимо зв'язок між k-м і k+1-м членами ряду. Для цього знайдемо їхнє відношення:
.
Звідси маємо
.
Програма обчислення суми ряду має вид:
program pr19;
uses crt;
label 1,2;
const N=25; EPS=1e-5;
var x,y,z,v:real;
k:integer; c:char;
BEGIN CLRSCR;
WRITELN('УВЕДИ X '); READLN(X);
k:=1;
y:=sqr(x)*x/2;
z:=y;
while k<=N do begin
writeln(‘k=’,k:2,’y=’,y:12:6,’z=’,z:12:6);
if abs(y) < EPS then goto 1;
v:=sqr(x)/((2*k+1)*(2*k+2));
k:=k+1; y:=y*v; z:=z+y;
end;
WRITELN('ТОЧНІСТЬ НЕ ДОСЯГНУТА’);GOTO 2;
1: WRITELN('ПРИ X=',X:4:1,'СУМА РЯДУ=',Z:12:6);
2: c:=readkey
end.
У програмі передбачений друк членів ряду і їхньої суми на кожній ітерації до виконання умови |yk|< .
