Масиви. Одновимірні масиви.
Масиви Масив – це впорядкована, іменована сукупність даних одного типу, яка складається з фіксованої кількості елементів. Одновимірний масив - це масив, кожен елемент якого визначається одним індексом. Особливості: • всі елементи мають один тип • весь масив має одне ім’я • всі елементи розміщені в пам’яті поряд Приклади: • список учнів в класі • школи в місті • дані про температуру повітря за рік
Масиви A НОМЕР масив 1 2 5 10 A[1] A[2] 3 3 15 15 елемента масиву (ІНДЕКС) 4 5 20 25 A[3] A[4] ЗНАЧЕННЯ A[5] елемента масиву НОМЕР (ІНДЕКС) елемента масиву: 2 A[2] ЗНАЧЕННЯ елемента масиву: 10
Опис масивів Для чого описувати? • визначити ім’я масиву • визначити тип масиву • визначити кількість елементів • виділити місце в пам’яті Масив цілих чисел: ім’я початковий індекс кінцевий індекс тип елементів var A : array[ 1. . 5 ] of integer ; Опис через константу: const N=5; var A: array[1. . N ] of integer;
Приклади опису масивів Масиви інших типів: var X, Y: array [1. . 10] of real; C: array [1. . 20] of char; Інший діапазон індексів: var Q: array [0. . 9] of real; C: array [-5. . 13] of char; Опис: const N = 5; var a: array[1. . N] of integer; i: integer;
Що неправильно? var a: array[10. . 1] of integer; [1. . 10]. . . A[5] : = 4. 5; var a: array ['a'. . 'z'] of integer; ['z'. . 'a']. . . A['B'] A['b'] : = 15; var a: array [0. . 9] of integer; . . . A[10] : = 'X';
Масиви Введення масиву з поясненням: A[1] = 5 A[2] = 12 A[3] = 34 A[4] = 56 A[5] = 13 for i: =1 to N do begin write(‘А[', i, ']='); readln ( a[i] ); end; ? Чому write? Введення масиву без пояснення: for i: =1 to N do readln(a[i]); Виведення масиву дійсних чисел з поясненням в стовпчик: for i: =1 to N do writeln(‘A[‘, i, ’]=‘, a[i]: 5: 2); Виведення масиву цілих чисел без пояснення в рядочок: writeln('Масив A: '); for i: =1 to N do write(a[i]: 4); Масив A: 10 24 68 112 26
Типові задачі на одновимірні масиви
Максимальний елемент Задача № 1: знайти в масиві максимальний елемент. Алгоритм: { вважаємо, що перший елемент – максимальний } for i: =2 to N do if a[i] > { максимального } then { запам’ятати новий максимальний елемент a[i] } ? Чому цикл від i=2?
Максимальний елемент Begin Clrscr; For i: =1 to 5 do Begin Write(‘A[‘, i, ’]=‘); readln(a[i]); End; max : = a[1]; { вважаємо, що перший – максимальний } For i: =2 to 5 do If a[i]>max then max: =a[i]; Readln; End.
Сума елементів Задача № 2: Знайти суму елементів в масиві цілих чисел А[1. . 10]. Program pr 2; Uses crt; Var A: array[1. . 10] of integer; s, i: integer; Begin Clrscr; S: =0; For i: =1 to 10 do Begin Write(‘A[‘, i, ’]=‘); readln(a[i]); S: =s+A[i]; End; Writeln(‘S=‘, s); Readln; End.
Видозмінений масив Задача № 3: Визначити, скільки елементів в масиві цілих чисел А[1. . 10] належать проміжку [1; 5) та збільшити їх на 5. Результат: видозмінений масив. Program pr 3; Uses crt; Const n=10; Var A: array[1. . n] of integer; s, i: integer; Begin Clrscr; S: =0; For i: =1 to n do Begin Write(‘A[‘, i, ’]=‘); readln(a[i]); If (a[i]>=1)and (a[i]<5) then a[i]: =a[i]+5; End; For i: =1 to n do Writeln(‘A[‘, i, ’]=‘, a[i]); Readln; End.
Д/З: ПІДГОТУВАТИСЬ ДО ТЕОР. РОБОТИ 1. 2. 3. 4. Означення масиву, означення одновимірного масиву. Опис масиву (2 способи). Введення та виведення масиву з поясненням та без. Типові задачі на масиви.


