Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

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




Масиви.

Масив це сукупність елементів одного типу. Масив визначається іменем та кількістю елементів в ньому.опис массиву здійснюється в розділах Var або Type.

При описанні массиву використовуються такі зарезервовані слова, як Array за ним в квадратних дужках розміщується тип діапазон, за допомогою якого компілятор виявляє загальну кількість елементів масиву. Тип діапазон задається нижньою та верхньою границями змінення індексу масиву. За словом of вказується тип елементів з яких складається масив.

Доступ до кожного елементу масиву в програмі здійснюється за допомогою індексу – цілого числа порядкового типу. При виклику в програмі будь-якого елементу масиву, відразу за іменем масиву повинен розміщуватись його індекс в квадратних дужках. В правильно створеній програмі, індекс не повинен виходити за межі, які вказані типом-діапазоном. Turbo Pascal може контролювати використання індексів в програмі на етапі компіляції та на етапі розрахунків в програмі.

Опис одновимірного масиву.

Type

A= Array[1..10] of integer;

Якщо масив описаний в розділі Type то в розділі Var обов'язково повинно бути переприсвоювання типу масиву наприклад: В:А;

Масив може бути описаний в розділі Var.

Наприклад:

Var

A: Array[1..10] of integer;

Масив складається з 10 елементів цілого типу.

Var

B: array[1..25] of real;

Масив складається з 25 елементів дійсного типу.

Опис двовимірного масиву.

Var C: Array[1..n,1..m] of word;

Матриця розмірності n*m, заповнена числами типу word, де в квадратних дужках описується спочатку за змовчуванням кількість рядків, а потім кількість стовпчиків.

Елементами масиву можуть бути будь-які дані, в тому числі є поняття “ масив масивів”

Наприклад:

Const Ii=10;

Type B: array[1..Ii] of real;

Var BB: array[1..4] of B;

В цьому випадку ВВ це матриця, яка має розмірність 4 рядка та Іі стовпчиків.

Є ще таке поняття, як константа-масив.

Наприклад:

Type Oswita=(School, Luceum, College, University);

Const A: Array[Osvita] of String[10]= (‘Школа, Ліцей, Коледж,Університет’);

Var Student:Osvita;

Така конструкція дозволяє об'єднати в одній програмі перечислювальний тип з англомовними словами з масивом рядків, на українській мові.

Ввід елементів массиву та їх обробка здійснюється в циклі. Для цього використовується будь-який з циклів.

Наприклад:

ввід двовимірного масиву:

For i:=1 to N do

For j:=1 to M do begin

WriteLn(‘D[i,j]= ’);

ReadLn(D[i,j]); end

Його обробка:

 

For i:=1 to N do begin

Sum:=0;

For j:=1 to M do Sum:=Sum+D[i,j];

R [i]:=Sum;

End;

Цей фрагмент програми демонструє підрахунок сум по рядках матиці D(N,M), та збереження цих сум в одновимірному масиві R.

В а р і а н т и з а в д а н ь

1. Задані цілі числа А1...Аn,В1...Вn. Якщо в послідовностях нема жодного члена із значенням К, що вводиться з клавіатури, то перший член 1 послідовності, не менший за всі інші члени, замінити на значення К. Останній член 2 послідовності, не більший за всі інші члени послідовності, замінити на К.

2. Замінити в матриці М*М рядки згідно з правилом 1®3, 2® 4 i. т.д.

3. Замінити в матриці М*М стовпчики згідно з правилом 1®2, 3®4 і.т.д.

4. Задана дійсна матриця М*N. Одержати нову матрицю, шляхом ділення всіх елементів заданої матриці на суму індексів максимального елемента.

5. Задана дійсна матриця М*N. Визначити числа, що відповідно рівні сумам елементів рядків, замінити їх нулями.

6. Задана дійсна матриця М*N. Визначити числа, що відповідно рівні добуткам елементів стовпчиків та замінити їх на 1.

7. Задана дійсна матриця М*N. Визначити числа, що відповідно рівні сумі елементів побічної діагоналі, замінити їх на протилежні їм числа.

8. Замінити числа матриці по правилу

9. Замінити числа матриці по правилу

10. Задана дійсна матриця М*N. Визначити Min елемент, викинути стовпчик та рядок на перетині яких знаходиться цей елемент.

11. Задана дійсна матриця М*N. Переставити елементи рядків таким чином, щоб останній став першим, передостанній другим і.т.д.

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

13. В квадратній матриці поміняти місцями дві трикутні області (верхню та нижню), утворені при перетині головної та побічної діагоналей.

14. В квадратній матриці поміняти місцями дві трикутні області (ліву та праву),

утворені при перетині головної та побічної діагоналей.

15. В квадратній матриці М*М замінити ті елементи сумою елементів побічної

a. діагоналі, які закінчуються 0.

16. Розташувати всі елементи матриці М*N в порядку зростання.

17. Знайти найменший елемент в матриці М*N всі елементи, які знаходились до нього переставити в зворотному порядку.

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

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

20. Задана дійсна матриця М*N. Знайти елементи сума цифр яких є подільною націло на 7 та утворити одновимірній масив з таких чисел.

 

Поделиться:





Читайте также:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...