рність масиву, типи і діапазони значень індексів, обмеження на типи елементів визначаються мовою програмування та / або конкретним транслятором.
У мовах програмування, що допускають оголошення програмістом власних типів, як правило, існує можливість створення типу «масив». У визначенні такого типу може вказуватися розмір, тип елемента, діапазон значень і типи індексів. Надалі можливе визначення змінних створеного типу. Всі такі змінні-масиви мають одну структуру. Деякі мови підтримують для змінних-масивів операції привласнення (коли однією операцією всіх елементів масиву присвоюються значення відповідних елементів іншого масиву).
Специфічні типи масивів:
Динамічні масиви
Динамічним називається масив, розмір якого може змінюватися під час виконання програми. Для зміни розміру динамічного масиву мова програмування, що підтримує такі масиви, повинен надавати вбудовану функцію або оператор. Динамічні масиви дають можливість більш гнучкої роботи з даними, так як дозволяють не прогнозувати збережені обсяги даних, а регулювати розмір масиву відповідно до реально необхідними обсягами. Звичайні, не динамічні масиви називають ще статичними.
Масиви масивів
Багатовимірні масиви, як правило, реалізовані як одномірні масиви, кожен елемент яких є посиланням на інший одновимірний масив.
Переваги: ??
легкість обчислення адреси елемента за його індексом (оскільки елементи масиву розташовуються один за іншим)
однаковий час доступу до всіх елементів
малий розмір елементів: вони складаються тільки з інформаційного поля
Недоліки:
для статичного масиву - відсутність динаміки, неможливість видалення або додавання елемента без зсуву інших
для динамічного і / або гетерогенного масиву - більш низьке (порівняно із звичайним статичним) швидкодію і додаткові накладні витрати на підтримку динамічних властивостей і / або гетерогенності.
при роботі з масивом в стилі C (з покажчиками) і при відсутності додаткових засобів контролю - загроза виходу за межі масиву і пошкодження даних
Практична частина
Завдання 1
Елементи квадратної матриці А і В обчислюються по заданих формулах. Скласти програму по обчисленню твори цих матриць. Обчислення елементів A [i, j], B [k, l] оформити функціями.
[i, j]=(i-j) / (i + j); [K, l]=kl / (2k + l);
Тип даних int, використовується для індексації масиву і лічильника: i, j, k, l, x, z, m;
Тип даних float, використовується для обчислення елементів масиву: A, B, C;
Лістинг:
System; System.Collections.Generic; System.Linq; System.Text; ConsoleApplication1
{
class Program
{void Main (string [] args)
{. WriteLine («Введіть кількість рядків і стовпців масиву»);
int m=int.Parse (Console.ReadLine ()); i, j, k, l, x, z; [,] A=new float [m, m]; [,] B=new float [m, m]; [,] C=new float [m, m];. WriteLine («Масив А»); (i=0; i