Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Кравчук(mathcad) / 1 семестр / Visual_Basic_6.0._Посiбник_2009

.pdf
Скачиваний:
16
Добавлен:
29.02.2016
Размер:
5.8 Mб
Скачать

ІНДИВІДУАЛЬНІ ЗАВДАННЯ

Скласти схему та програму. Вивести згенерований, сформований та впорядкований масиви.

1

Згенерувати

й

вивести

на

екран

одновимірний

масив

z = {zi}

 

(i

1,n

 

 

;n 15 ) у діапазоні цілих чисел [ -10; 10 ]. Сформувати масив y,

 

який складається з від’ємних елементів масиву z. Впорядкувати елементи

 

масиву y за зростанням.

 

 

 

 

 

2

Згенерувати

й

вивести

на

екран

одновимірний

масив

x = {xi}

 

(i

 

 

 

 

 

;n 10 )

у діапазоні цілих чисел [

20; 90 ]. Сформувати масив z,

 

1,n

 

який складається з елементів масиву x, які задовольняють умові xi > 40.

 

Впорядкувати елементи масиву z за зростанням.

 

 

3

Згенерувати

й

вивести

на

екран

одновимірний

масив

y = {yi}

 

(i

 

 

 

;n 18) у діапазоні цілих чисел [-20;20]. Сформувати масив z, який

 

1,n

 

складається з додатних елементів масиву y. Впорядкувати елементи ма-

 

сиву y за спаданням.

 

 

 

 

 

4

Згенерувати

й

вивести

на

екран

одновимірний

масив

y = {yi}

 

(i

 

 

 

;n 24) у діапазоні цілих чисел [-40;40]. Сформувати масив x, який

 

1,n

 

складається з елементів масиву y, які задовольняють умові -20 yi < 20.

 

Впорядкувати елементи масиву y за спаданням модулів елементів.

 

5

Згенерувати

й

вивести

на

екран

одновимірний

масив

y = {yi}

 

(i

 

 

 

;n 16 ) у діапазоні цілих чисел [ 10; 100 ]. Сформувати масив z з

 

1,n

 

елементів масиву y, які належать інтервалу 30 < yi < 60. Впорядкувати

 

елементи масиву y за зростанням.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

6

Згенерувати

й

вивести

на

екран

одновимірний

масив

z = {zi}

 

(i

 

 

 

;n 20) у діапазоні цілих чисел [ 10; 40 ]. Сформувати масив y з

 

1,n

 

елементів масиву z, які задовольняють умові zi >25. Впорядкувати еле-

 

менти масиву y за спаданням.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7

Згенерувати

й

вивести

на

екран

одновимірний

масив

z = {zi}

 

(i

 

 

 

;n 15 ) у діапазоні цілих чисел [ -40; 40 ]. Сформувати масив y з

 

1,n

 

елементів масиву z, які задовольняють умові zi 25. Впорядкувати еле-

 

менти масиву y за спаданням модулів елементів.

 

 

8

Згенерувати

й

вивести

на

екран

одновимірний

масив

y = {yi}

 

(i

 

 

 

;n 16 ) у діапазоні цілих чисел [ -10; 30 ]. Сформувати масив z із

 

1,n

 

додатних елементів масиву y. Впорядкувати елементи масиву z за зрос-

 

танням.

 

 

 

 

 

 

 

9

Згенерувати

й

вивести

на

екран

одновимірний

масив

x = {xi}

 

(i

 

;n 18) у діапазоні цілих чисел [ 20; 120 ]. Сформувати масив y з

 

1,n

 

елементів масиву x, які задовольняють умові xi 60. Впорядкувати еле-

 

менти масиву y за зростанням.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

140

 

 

 

10

Згенерувати

й

вивести

на

екран

одновимірний

масив

 

z = {zi}

 

(i

1,n

 

;n 17 ) у діапазоні цілих чисел [ -15; 15 ]. Сформувати масив x із

 

від’ємних елементів масиву z. Впорядкувати елементи масиву x за спа-

 

данням модулів елементів.

 

 

 

 

 

 

 

 

 

 

11

Згенерувати й вивести на екран одновимірний масив y= {yi} (i

 

 

 

 

;n 18) у

1,n

 

діапазоні цілих чисел [ -20; 90 ]. Сформувати масив z із парних елементів ма-

 

сивуy. Впорядкуватиелементимасивуzза зростанням.

 

 

 

 

 

 

 

12

Згенерувати й вивести на екран одновимірний масив z= {zi} (i

 

 

 

;n 14) у

1,n

 

діапазоні цілих чисел [ 20; 75 ]. Сформувати масив y із непарних елементів

 

масиву z. Впорядкувати елементи масивуy за спаданням.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

13

Згенерувати

й

вивести

на

екран

одновимірний

масив

 

y = {xi}

 

(i

 

 

 

;n 13) у діапазоні цілих чисел [ -30; 40 ]. Сформувати масив y з

 

1,n

 

елементів масиву x, які стоять на парних місцях. Впорядкувати елементи

 

масиву y за спаданням модулів елементів.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

14

Згенерувати

й

вивести

на

екран

одновимірний

масив

 

y = {yi}

 

(i

 

 

 

 

 

 

;n 11) у діапазоні цілих чисел [ -20; 20 ]. Сформувати масив x з

 

1,n

 

елементів масиву y, які стоять на непарних місцях. Впорядкувати елеме-

 

нти масиву x за зростанням модулів елементів.

 

 

 

 

 

 

 

15

Згенерувати й вивести на екран одновимірний масив z= {zi} (i

 

 

 

;n 15) у

1,n

 

діапазоні цілих чисел [ -35; 70 ]. Сформувати масив x із додатних елементів

 

масиву z. Впорядкувати елементи масивуx за зростанням.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

16

Згенерувати

й

вивести

на

екран

одновимірний

масив

 

x = {xi}

 

(i

 

 

 

 

 

;n 20) у діапазоні цілих чисел [ -10; 50 ]. Сформувати масив z з

 

1,n

 

елементів масиву x, які належать інтервалу -10< xi 30. Впорядкувати

 

елементи масиву z за спаданням.

 

 

 

 

 

 

 

 

 

17

Згенерувати

й

вивести

на

екран

одновимірний

масив

 

y = {yi}

 

(i

 

 

 

 

;n 8) у діапазоні цілих чисел [ 55; 145 ]. Сформувати масив z з

 

1,n

 

елементів масиву y, які задовольняють умові yi < 100. Впорядкувати еле-

 

менти масиву y за зростанням.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

18

Згенерувати

й

вивести

на

екран

одновимірний

масив

 

z = {zi}

 

(i

 

 

;n 15) у діапазоні цілих чисел [ -30; 70 ]. Сформувати масив y з

 

1,n

 

елементів масиву z, які стоять на парних місцях. Впорядкувати елементи

 

масиву y за зростанням модулів елементів.

 

 

 

 

 

 

 

19

Згенерувати

й

вивести

на

екран

одновимірний

масив

 

x = {xi}

 

(i

 

 

;n 20) у діапазоні цілих чисел [ 25; 85 ]. Сформувати масив z з

 

1,n

 

елементів масиву x, які задовольняють умові xi 50. Впорядкувати еле-

 

менти масиву z за зростанням.

 

 

 

 

 

 

 

 

 

20

Згенерувати

й

вивести

на

екран

одновимірний

масив

 

y = {yi}

 

(i

 

;n 18 ) у діапазоні цілих чисел [ -15; 15 ]. Сформувати масив z з

 

1,n

 

елементів масиву y, які розташовані на парних місцях. Впорядкувати

 

елементи масиву z за зростанням модулів елементів.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

141

 

 

 

 

 

 

 

 

21

Згенерувати

й

вивести

на

екран

одновимірний

масив

z = {zi}

 

(i

1,n

;n 15) у діапазоні цілих чисел [ 5; 35 ]. Сформувати масив x з

 

елементів масиву z, які задовольняють умові zi 20. Впорядкувати еле-

 

менти масиву x за спаданням.

 

 

 

 

22

Згенерувати

й

вивести

на

екран

одновимірний

масив

x = {xi}

 

(i

 

 

 

 

 

 

;n 15 ) у діапазоні цілих чисел [ 10; 40 ]. Сформувати масив z із

 

1,n

 

парних елементів масиву x. Впорядкувати елементи масиву z за зростан-

 

ням.

 

 

 

 

 

 

 

23

Згенерувати

й

вивести

на

екран

одновимірний

масив

y = {yi}

 

(i

 

 

 

;n 18) у діапазоні цілих чисел [ -12; 25 ]. Сформувати масив z із

 

1,n

 

непарних елементів масиву y. Впорядкувати елементи масиву z за спа-

 

данням.

 

 

 

 

 

 

 

24

Згенерувати

й

вивести

на

екран

одновимірний

масив

z = {zi}

 

(i

 

 

 

;n 19) у діапазоні цілих чисел [ -20; 25 ]. Сформувати масив y з

 

1,n

 

елементів масиву z, які задовольняють умові zi >5. Впорядкувати елеме-

 

нти масиву y за зростанням.

 

 

 

 

 

25

Згенерувати

й

вивести

на

екран

одновимірний

масив

x = {xi}

 

(i

 

 

 

;n 10) у діапазоні цілих чисел [ -40; 20 ]. Сформувати масив z з

 

1,n

 

елементів масиву x, які задовольняють умові xi < –5. Впорядкувати еле-

 

менти масиву z за зростанням модулів елементів.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

26

Згенерувати

й

вивести

на

екран

одновимірний

масив

y = {yi}

 

(i

 

 

 

;n 18)

у діапазоні цілих чисел [ 0; 50 ]. Сформувати масив z з

 

1,n

 

елементів масиву y, які належать інтервалу 10< yi 30. Впорядкувати

 

елементи масиву z за зростанням.

 

 

 

27

Згенерувати

й

вивести

на

екран

одновимірний

масив

z = {zi}

 

(i

 

 

;n 15) у діапазоні цілих чисел [ -10; 30 ]. Сформувати масив y з

 

1,n

 

елементів масиву z, які задовольняють умові zi 10. Впорядкувати еле-

 

менти масиву y за спаданням.

 

 

 

 

28

Згенерувати

й

вивести

на

екран

одновимірний

масив

z = {zi}

 

(i

 

 

;n 10) у діапазоні цілих чисел [ -40; 20 ]. Сформувати масив y із

 

1,n

 

від’ємних елементів масиву z. Впорядкувати елементи масиву y за зрос-

 

танням.

 

 

 

 

 

 

 

29

Згенерувати

й

вивести

на

екран

одновимірний

масив

y = {yi}

 

(i

 

;n 8)

у діапазоні цілих чисел [ 11; 44 ]. Сформувати масив z з

 

1,n

 

елементів масиву y, які задовольняють умові yi 5. Впорядкувати еле-

 

менти масиву y за спаданням.

 

 

 

 

30

Згенерувати

й

вивести

на

екран

одновимірний

масив

z = {zi}

 

(i

 

;n 15) у діапазоні цілих чисел [ 0; 50 ]. Сформувати масив y із

 

1,n

 

непарних елементів масиву z, які задовольняють умові yi > 25. Впоряд-

 

кувати елементи масиву y за зростанням.

 

 

 

142

3.2. Програмування типових алгоритмів обробки двовимірних масивів.

Лабораторна робота №5

Мета:

навчитись складати типові алгоритми обробки двовимірних масивів;

засвоїти методи введення двовимірних масивів;

ознайомитись з виведенням двовимірних масивів у таблицю

MSFlexGrid.

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

Для виконання лабораторної роботи необхідно вивчити теоретичний матеріал, який розташований на ст. 30; ст. 42 – ст. 43; ст. 54 – ст. 56 даних методичних вказівок.

Література: [1; 2; 3]

ЗРАЗОК ВИКОНАННЯ РОБОТИ

Умова. Задана матриця An m (n = 4; m = 4)

 

0.45

4

8

11

 

 

4

2

3

4,6

 

A

 

 

 

1,8

3

5,9

11

 

 

 

 

 

 

12

1,5

6,7

0,1

 

 

 

 

У заданій матриці знайти мінімальний по модулю елемент серед елементів, що розташовані на головній та побічній діагоналях. Вивести також номер рядка й стовпця, у яких він розташований. Знайти добуток додатних елементів кожного рядка матриці.

Порядок виконання роботи

І. Скласти алгоритм реалізації завдання. Використовуємо типові алго-

ритми обчислення добутку елементів та знаходження мінімального елемента. Введення елементів матриці:

1)заносимо всі елементи заданої матриці А (по рядках) у одновимірний масив х, який створюємо за допомогою функції Array;

2)уводимо змінну k, яка є індексом елементів масиву х;

3)відкриваємо цикли індексів для матриці по рядках "і" та стовпцях "j" і присвоюємо елементам матриці a(i, j) значення з масиву х(k).

143

Схема

Початок

Введення

n, m

i=1, n

j=1, m

Введення-

виведення

aij

MinEl = |a1,1|; im=1; jm=1

i=1, n

 

j=1, m

 

i = j

 

i+j=n+1

 

+

|ai,j|<MinEl

 

+

 

MinEl = |ai,j|; im=i; jm=j

Виведення

 

MinEl, im, jm

 

1

1

i=1, n

p = 1

j=1, m

ai,j > 0

+

p = p ai,j

Виведення

p

Кінець

144

. Реалізація етапу візуального програмування.

ІІ.1. Розробити форму та її вміст. Для реалізації завдання будемо використовувати одну екранну форму. Форма буде вміщувати: назву роботи, дві командні кнопки, таблицю MSFlexGrid1, у яку виведемо задані елементи матриці. Добутки елементів кожного рядка виведемо в список List1. Мінімальний по модулю елемент та номер рядка й стовпця виведемо в текстові поля. Щоб знати, що де знаходиться створимо поля написів (мітки). У вікні форми запрограмувати наступні об’єкти:

мітки Label1…Label6;

список List1;

текстове поле Text1…Text3;

командні кнопки Command1, Command2;

нестандартний управляючий елемент MSFlexGrid1. Щоб розташувати нестандартний елемент управління MSFlexGrid у головному меню необхідно вибрати команди:

Project Components Встановити галочку Microsoft FlexGrid Control 6.0 ОК.

ІІ.2. Усі властивості об’єктам задати самостійно під час проектування форми.

. Приступити до етапу програмування у вхідному коді.

ІІІ.1. Два рази клацнути по кнопці <Розрахунок>. У вікні Project1– Form1 (Code) з’явиться заголовок процедури Private Sub Command1_Click() та її кі-

нець End Sub. Після заголовку процедури набрати текст (тіло програми) (рис. 18).

ІІІ.2. В секції (General)-(Declarations) друкуємо Option Base 1 (рис. 18).

ІІІ.3. Два рази клацнути по кнопці <Вихід>. У вікні Project1–Form1(Code) з’явиться заголовок процедури Private Sub Command2_Click() та її кінець End Sub. Після заголовку процедури набрати End (рис. 18).

IV. Після завершення написання кодів натиснути кнопку <Start> на панелі інструментів Standard (Стандартна). Клацнути по кнопці <Розрахунок>. У вікнах InputBox підтвердити значення початкових даних (n = 4; m = 4): два рази натиснути Enter . Переписати результати розрахунків (рис. 19).

V. Для закінчення розрахунків й повернення у вікно коду необхідно клацнути у формі по кнопці <Вихід>.

VI. Збережіть проект у папку Lab_5.

145

Рис. 18. Вікно Project-Form1 (Code)

Рис. 19. Форма з результатами розрахунків

146

ІНДИВІДУАЛЬНІ ЗАВДАННЯ

Задана матриця Anxm (n - кількість рядків, m- кількість стовпчиків)

 

 

0,45

4

8

11

 

 

 

 

 

2

3

4 ,6

 

 

 

4

 

 

 

A

1,8

3

5,9

11

 

 

 

 

12

1,5

6,7

8

 

 

 

 

 

 

У заданій матриці:

 

 

 

 

 

1

 

Знайти максимальний елемент матриці.

 

 

 

2

 

Знайти мінімальний елемент матриці.

 

 

 

3

 

Знайти суму елементів матриці.

 

 

 

4

 

Знайти добуток елементів матриці.

 

 

 

5

 

Знайти суму елементів головної діагоналі (i = j).

 

 

6

 

Знайти добуток елементів головної діагоналі (i = j).

 

7

 

Знайти суму елементів, що лежать вище головної діагоналі (i < j).

8

 

Знайти суму елементів, що лежать нижче головної діагоналі (i > j)

9

 

Знайти добуток елементів, що лежать вище головної діагоналі (i < j)

10

 

Знайти добуток елементів, що лежать нижче головної діагоналі (i > j)

11

 

Знайти максимальне значення кожного рядка матриці.

 

12

 

Знайти максимальне значення кожного стовпчика матриці.

13

 

Знайти мінімальне значення кожного рядка матриці.

 

14

 

Знайти мінімальне значення кожного стовпчика матриці.

15

 

Знайти суму від’ємних елементів матриці .

 

 

16

 

Знайти добуток від’ємних елементів матриці .

 

 

17

 

Знайти суму додатних елементів матриці .

 

 

18

 

Знайти добуток додатних елементів матриці .

 

 

19

 

Знайти кількість від’ємних елементів матриці .

 

 

20

 

Знайти кількість додатних елементів матриці .

 

 

21

 

Знайти суму елементів, більших заданого числа.

 

 

22

 

Знайти добуток елементів, більших заданого числа.

 

23

 

Знайти суму елементів, менших заданого числа.

 

 

24

 

Знайти добуток елементів, менших заданого числа.

 

25

 

Знайти добуток елементів третього рядка матриці.

 

26

 

Знайти кількість елементів, що задовольняють умові –1 < aij < 5.

27

 

Знайти суму елементів, що задовольняють умові –0,5 < aij < 4,7.

28

 

Знайти добуток елементів, що задовольняють умові –2 < aij < 5.

29

 

Знайти середнє арифметичне елементів матриці.

 

 

30

 

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

 

 

147

3.3. Модульне програмування

3.3.1.Використання процедури Function. Лабораторна робота №6

Мета:

навчитись застосовувати процедури загального призначення типу Function;

ознайомитись з командою Add Module меню Project.

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

Для виконання лабораторної роботи необхідно вивчити теоретичний матеріал, який розташований на ст. 64 – ст. 68 даних методичних вказівок. Літера-

тура: [1; 2; 3]

ЗРАЗОК ВИКОНАННЯ РОБОТИ

Умова. Використовуючи процедуру Function, обчислити:

 

2

3

 

2

 

2

 

 

 

 

c

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

sin

 

a

 

 

 

b

 

 

 

 

e

 

ln

b a

 

 

 

2

3

 

2

 

2

e

b

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

y

 

 

 

 

 

 

 

 

 

 

 

; z

sin2 3

 

 

 

;

w sin

 

 

b

 

c

 

 

ln

 

c a

 

;

ea

ln

 

c b

 

 

 

 

 

 

 

 

 

 

 

c

2 a2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

a 2,34; b 1,27; c 0,64.

Значення y, z, w заокруглити до шести знаків після коми.

Порядок виконання роботи

І. Скласти алгоритм реалізації завдання. Зверніть увагу, що в наведеному завданні, доводиться використовувати для обчислень одні і ті самі вирази, у яких змінюються лише імена змінних. Для спрощення таких розрахунків використовуються процедури Function, які повертають значення за ім’ям функції в процедуру, з якої вони викликались. Вони матимуть аргументи, через які будуть одержувати вхідні значення для розрахунків. Опишемо дві процедури з довільним ім’ям (ідентифікатором) та довільними формальними параметрами. Нехай:

1)f1(p1, p2 ) sin2 3p12 p22 ;

2)f2 (p1, p2, p3) ep1 ln p2 p3 .

. Реалізація етапу візуального програмування.

ІІ.1.Розробити форму та її вміст. Для реалізації завдання будемо використовувати одну екранну форму. Форма вміщуватимете: дві командні кнопки, текстові області, у які введемо початкові дані під час проектування форми. Результати

148

розрахунків також виведемо в текстові поля. Щоб знати, що де знаходиться створимо поля написів(мітки). Увікніформизапрограмуватинаступніоб’єкти:

мітки Label1…Label8;

текстові поля Text1…Text6 для введення (виведення) даних;

командні кнопки Command1, Command2.

ІІ.2. Всі властивості об’єктам задаємо самостійно під час проектування форми (обов’язково задати для Text1 властивість Text = 2.34, для Text2

властивість Text = 1.27, для Text3 властивість Text = 0.67).

Схема головної програми

Початок

Введення a, b, c

y f1(b, a) f2(a, c,b)

z f2 (c,b,a) f1(c,a)

Схема модуля 1 f1(p1, p2)

Вхід

f1(p1, p2 ) sin2 3p12 p22

Вихід

Схема модуля 2 f2 (p1, p2 , p3 )

w f1(b,c) f2(b,c,a)

Вхід

 

 

Виведення

f2 (p1, p2, p3) ep1

ln p2

p3

y, z, w

 

 

 

Кінець

Вихід

 

 

. Приступити до етапу програмування у вхідному коді.

ІІІ.1. Два рази клацнути по кнопці <Розрахунки>. У вікні Project1– Form1 (Code) з’явиться заголовок процедури Private Sub Command1_Click() та її кі-

нець End Sub. Після заголовку процедури набрати текст (тіло програми) (рис. 20).

ІІІ.2. Два рази клацнути по кнопці <Вихід>. У вікні Project1–Form1 (Code) з’явиться заголовок процедури та її кінець. Після заголовку процедури набрати

End (рис. 20).

149

Тут вы можете оставить комментарий к выбранному абзацу или сообщить об ошибке.

Оставленные комментарии видны всем.