Програмування: масиви та рядки.
Вирази з операцією [] допустимі в операторах скрізь, де вживається змінна відповідного типу, за винятком того, що елемент масиву не може бути параметром циклу. Наприклад, якщо діє означення типу ART та змінної A, то можна писати щось на зразок
A[1] :=1; A[2] := A[1]+2;
for k := 3 to 101 do readln(A[k]);
writeln(A[1]+A[2]+A[3]+A[4]).
Індексування – це єдина операція над масивами як цілісними об'єктами. Тому обробка масивів описується через обробку їх компонентів. Щоправда, в мові Бор ланд-Паскаль можна присвоювати однотипні масиви. Наприклад, за дії означень
var a, b : array[char] of integer; ch : char;
можна замість циклу
for ch:= chr(0) to chr(255) do b[ch]:=a[ch];
написати лаконічно
b := a;
Задачі
1)На вхід програми подається N цілих чисел X1, ... , XN із діапазону 0 ..100; N>0. Написати програму обчислення:
- їх середнього арифметичного значення M та дисперсії D, тобто середнього арифметичного квадратів різниць між числами та M:
D = ( ( X1 - M )2 + … + ( XN - M )2 ) / N;
- кількостей повторень K1, K2, … , K100 кожного з чисел 1, 2, … , 100.
Числа надходять у програму
а) від стандартного пристрою введення, тобто клавіатури;
б) від генератора випадкових чисел.
2). Черга – це така послідовність, що елементи додаються в її кінець, а вилучаються з її початку. Написати програму роботи з чергою цілих, поданою в масиві.Потрібно забезпечити:
- скидання черги (вилучення всіх її елементів);
- обчислення кількості елементів у черзі;
- перевірки, чи порожня черга;
- обчислення обсягу вільного місця в черзі (кількість елементів, які можна додати до її заповнення);
- додавання елемента в кінець черги;