Смекни!
smekni.com

Програмування в середовищі Pascal (стр. 12 из 16)

Варіант Зміст задачі
17 Обчислити добуток і кількість непарних елементів масивів Р(15) і М(9)
18 Обчислити середнє геометричне елементів масивів K(10) і C(8), не кратних 3
19 Знайти середнє арифметичне парних елементів в масивах А(15) і C(9) з інтервалу [10;30]
20

Знайти суму і кількість додатних елементів в масивах В(13) і

А(9), що стоїть на парних місцях

21 Знайти добуток суми парних і суми непарних елементів масивів

C(10) і А(9)

22

Знайти середнє геометричне додатних елементів в масивах

М(16) і А(8), що стоїть на непарних місцях

23 Знайти різницю між добутком парних чисел і сумою додатних чисел масивів В(12) і А(7)
24

Обчислити суму квадратів додатних елементів масиву Р(16) і

В(7), які мають непарні індекси

25 Підрахувати кількості додатних і парних чисел в масивах А(13) і

В(9)

2 Для кожного з двох масивів А(10) і В(12) скласти програму для вирішення наступних задач. Варіанти задач наведені в табл.9.

Таблиця 9 - Варіанти завдання

Варіант Зміст задачі
1 Знайти номер найбільшого додатного елемента
2 Знайти суму найбільшого і якнайменшого елементів
3 Знайти добуток номера найбільшого додатного і якнайменшого від’ємного елементів
4 Знайти номер і значення якнайменшого додатного непарного елемента

Продовження табл.9

Варіант Зміст задачі
5 Знайти різницю максимального і мінімального додатних парних елементів
6 Знайти суму квадратів максимального і мінімального елементів
7 Знайти максимальний і мінімальний елементи і поміняти їх місцями
8 Знайти частку від ділення найбільшого на якнайменший елементів
9 Поміняти місцями перший і максимальний елемент
10 Знайти максимальний по модулю елемент і його номер
11 Знайти різницю мінімального парного і мінімального непарного елементів
12 Знайти суму мінімального додатного елемента і його номера
13 Поміняти місцями максимальний додатний і мінімальний від’ємний елементи
14 Знайти добуток модулів найбільшого від’ємного елемента і якнайменшого парного елемента
15 Поміняти місцями другий і найбільший додатний елементи
16 Записати +1 замість максимального парного елемента, а число -1 замість мінімального непарного елемента
17 Знайти номер і значення найбільшого по модулю елемента
18 Записати 100 замість максимального кратного 3 елемента
19 Поміняти місцями максимальний парний і мінімальний непарний елементи
20 Знайти номер і значення найбільшого кратного 5 елемента
21 Записати -100 замість мінімального парного елемента
22 Знайти мінімальний кратний 4 елемент і його номер
23 Обчислити середнє арифметичне максимального і мінімального елементів
24 Обчислити середнє геометричне номерів максимального і мінімального елементів
25 Обчислити частку від ділення максимального елемента на його порядковий номер

3 В масивах М(13) і В(9) знайти (А) чисел, умови А наведені в табл.10.

Масив довільний.

Таблиця 10 - Варіанти завдання

Варіант Умова А
1 Суму трьох найбільших додатних
2 Суму трьох якнайменших від’ємних , кратних 3
3 Різниця двох найбільших
4 Частку від ділення двох найбільших, кратних 3
5 Добуток найбільшого і якнайменшого парних
6 Суму двох найбільших від’ємних
7 Модуль різниці двох найбільших
8 Добуток трьох найбільших додатних
9 Добуток трьох якнайменших від’ємних
10 Суму двох найбільших і трьох якнайменших парних
11 Суму чотирьох найбільших, кратних 5
12 Суму чотирьох якнайменших парних від’ємних
13 Добуток найбільшого і якнайменшого від’ємних , кратних 3
14 Суму найбільшого і двох якнайменших парних
15 Добуток чотирьох найбільших додатних, кратних 5
16 Частку від ділення суми двох найбільших позитивних і двох найбільших від’ємних
17 Суму двох найбільших парних і двох якнайменших непарних
18 Добуток трьох найбільших додатних і двох найбільших від’ємних
19 Суму трьох якнайменших, що стоять на парних місцях
20 Суму двох найбільших і двох якнайменших, що стоять на непарних місцях
21 Добуток найбільшого додатного і двох якнайменших, що стоять на парних місцях
22 Добуток п'яти найбільших додатних парних
23 Суму трьох якнайменших від’ємних, кратних 5
24 Суму найбільшого і якнайменшого від’ємних
25 Частку від ділення суми двох найбільших додатних і суми двох якнайменших від’ємних

7 ЛАБОРАТОРНА РОБОТА 4. ВКЛАДЕНІ ЦИКЛИ. ОБРОБКА

ДВОМІРНИХ МАСИВІВ

7.1 Теоретичні відомості

У Pascal багатовимірні масиви можуть визначатися послідовно: спочатку оголошується один масив, потім другий, елементами якого є оголошені раніше масиви, і т.д. Один масив вкладається в іншій, і ступінь такого вкладення необмежена. Наприклад, для матриці А(2,3)

TYPE STROKA = ARRAY [1..3] OF REAL;

MATR = ARRAY [1..2] OF STROKA;

VAR V : STROKA; А : MATR;

Змінна А – це двомірний масив з двох рядків, до кожного з яких включено по три елементи.

Опис А можна скоротити, виключивши визначення типу STROKA у визначенні типу MATR:

TYPE MATR = ARRAY [1..2] OF ARRAY [1..3] OF REAL; або ж

TYPE MATR = ARRAY [1..2,1..3] OF REAL;

Якщо вказаний тип використовується для визначення одного масиву в програмі, то зручно оголошувати масив у розділі опису змінних:

VAR А : ARRAY [1..2,1..3] OF REAL;

Як вже наголошувалося, поняття двомірного масиву відповідає поняттю матриці або таблиці. При цьому перший індекс відповідає рядку, а другий – стовпцю. Максимальна кількість рядків (m) і стовпців (n) визначається при описі типу масиву. Посилання на елемент матриці А, що знаходиться на перетині i-го рядка і j-го стовпця, має вигляд А[i,j].

При обробці матриць часто доводиться виділяти елементи:

- k-го рядка А[к,j] j=1, ..., m

- k-ї колонки А[i,k] i=1, ... , n

а для квадратних матриць (m=n) також:

головної діагоналі А[i,i] i=1, ..., n
побічної діагоналі А[i,n+1-i] i=1, ..., n
наддіагональні А[i,j] i>j
піддіагональні А[i,j] i<j

Для двомірних масивів зручно використовувати вкладені цикли – цикли, в тілі яких містяться інші циклічні структури. Цикл, що містить в собі інший цикл, називається зовнішній, а цикл, що міститься в іншому – внутрішнім.

При виконанні вкладених циклів спочатку повністю виконується внутрішній цикл, потім зовнішній цикл змінює значення свого параметра циклу на наступне і знову виконується внутрішній цикл і т.д. до повного виконання зовнішнього циклу.

7.2 Приклад виконання лабораторної роботи 4

Приклад 4a. Знайти мінімальний додатний елемент матриць А(5,4) і В(4,3), а також номер рядка і стовпця, де він знаходиться.

Блок- схеми (рис. 20, 21, 22, 23)

Рисунок 20 - Блок-схема алгоритму процедури Vvod

Рисунок 21 - Блок-схема алгоритму процедури Vivod

Рисунок 22 - Блок-схема алгоритму процедури Obrab

Рисунок 23 - Блок-схема алгоритму основної програми

Текст програми

Program Lab4a;

{Селективна Обробка Матриць} Uses Crt;

Const N1=5; M1=4; N2=4; M2=3;

Type Matr=Array[1..N1,1..M1] Real;

Var А, B : Matr; I, J : Integer;

{-------Процедура Введення Матриці-------}

Procedure Vvod(Var X:Matr;K,L:Integer);

Begin

Writeln(' Введіть Матрицю ',K:2,' Х ',L:2);

For I:=1 To K Do

Begin

Writeln(I:2,'-й Рядок');

For J:=1 To L Do Read(X[I,J]);

Writeln;

End;

End;

{-------Процедура Виведення Матриці-------}

Procedure Vivod(Var X:Matr;K,L:Integer); Begin

Writeln(' Початкова Матриця ');

For I:=1 To K Do

Begin

For J:=1 To L Do Write(X[I,J]:5:2,' ');

Writeln;

End;

Writeln;

End;

{-------Процедура Обробки-------}

Procedure Obrab(X:Matr;K,L:Integer);

Var Min : Real; Imin, Jmin : Integer;

Begin

Min:=10e30;

Imin:=0;

Jmin:=0;

For I:=1 To K Do

For J:=1 To L Do

If (X[I,J]>0) And (X[I,J]<Min) Then

Begin

Min:=X[I,J];

Imin:=I;

Jmin:=J;

End;

If Imin=0 Then Writeln('Додатних Нема')

Else

Begin

Writeln('Найменший Додатний Елемент = ',Min:6:2);

Writeln(' Рядок -',Imin:2,' Стовпець - ',Jmin:2);

End;

Writeln;

End;

{-------Основна Програма-------}

Begin

Clrscr;

Vvod(A,N1,M1);

Vvod(B,N2,M2);

Clrscr;

Writeln('Матрица А');

Vivod(A,N1,M1);

Obrab(A,N1,M1); Writeln('Матрица B');