Завдання 1.
Умова: Знайти середнє арифметичне загальної сукупності елементів тихстрок заданої матриці, останній елемент яких дорівнює 1. p>
Програма:program S2_Z1;type m = array [1 .. 100,1 .. 100] of integer;var A: m; p>
procedure vvod (m, n: integer; var x: m);var i, j: integer;begin writeln ( 'введіть елементи масиву');for i: = 1 to m dofor j: = 1 to n doread (x [i, j]);end; p>
procedure arf (m, n: integer; var x: m);var i, j, s: integer; sr: real;beginfor i: = 1 to m do begin s: = 0; sr: = 0;if x [i, n] = 1 then beginfor j: = 1 to n dos: = s + x [i, j]; sr: = s/n;writeln ( 'середнє арифметичне', i, 'рядка дорівнює', sr: 5:2); end; end;end; p>
beginvvod (3,3, A);arf (3,3, A);end. p>
Завдання 2.
Умова: Отримати масив Х (n) за правилом: ХI = 1, якщо в i-му стовпцізаданої матриці є хоча б один елемент перевищує задане значення С,інакше Xi = 0. Знайти загальне число елементів, великих С. p>
Програма:program S2_Z2;type m = array [1 .. 100,1 .. 100] of integer; mas = array [1 .. 100] of integer;var A: m; p>
procedure vvod (m, n: integer; var x: m);var i, j: integer;begin writeln ( 'введіть елементи масиву');for i: = 1 to m dofor j: = 1 to n doread (x [i, j]);end; p>
procedure moped (m, n: integer; var y: m);var i, j, c, k: integer; X: mas;begin k: = 0; writeln ( 'введіть величину С ='); readln (c);for j: = 1 to n do x [j]: = 0;for j: = 1 to n dofor i: = 1 to m doif y [i, j]> c then begin X [j]: = 1; k: = k +1; end;writeln ( 'елементи масиву Х:');for j: = 1 to n do write (X [j], '');writeln;writeln ( 'число елементів матрици перевищують число', c, 'дорівнює', k)end; p>
beginvvod (2,5, A); moped (2,5, A); readln;end. p>
Завдання 3.
Умова: Дано масив A (5,5). Змінити частину матриці, що знаходиться підголовною діагоналлю в такий спосіб: якщо елемент A [i, j] цій частиніматриці більше елемента A [j, i], то задати елементу A [i, j] нового значення,рівне підлозі сумою двох цих елементів. p>
Програма:program S2_Z3;type m = array [1 .. 100,1 .. 100] of real;var A: m; p>
procedure vvod (m, n: integer; var x: m);var i, j: integer;beginwriteln ( 'введіть елементи масиву');for i: = 1 to m dofor j: = 1 to n doread (x [i, j]);end; p>
procedure mat (m, n: integer; var x: m);var i, j: integer; t: real;beginwriteln ( 'змінений матриця A [i, j] буде виглядати так');for i: = 1 to m dofor j: = 1 to n doif i> j then if x [i, j]> x [j, i] then x [i, j]: = (x [i, j] + x [j, i])/2;for i: = 1 to m dofor j: = 1 to n dowrite (A [i, j]: 2:1, '');end; p>
beginvvod (5,5, A);mat (5,5, A);end. p>
Завдання 4.
Умова: Визначити саму довгу послідовність поспіль нулівв заданому одновимірному масиві. p>
Програма:program S2_Z4;type m = array [1 .. 100] of integer;var A: m; p>
procedure vvod (m: integer; var x: m);var i: integer;begin writeln ( 'введіть елементи масиву');for i: = 1 to m doread (x [i]);end; p>
procedure moped (m: integer; var x: m);var i, k, n: integer;begin k: = 0; n: = 0;for i: = 1 to m doif x [i] = 0 then k: = k +1 else begin if x [i-1] = 0 then if k> n then n: = k; k: = 0; end;if k> n thenwriteln ( 'найбільша послідовність нулів состовляет', k) elsewriteln ( 'найбільша послідовність нулів состовляет', n);end; p>
beginvvod (20, A); moped (20, A);end. p>
Завдання 5.
Написати програму, що зчитують задану кількість одновимірних масивів,визначальну мінімальний елемент в кожному з них і підраховуєкількість нулів серед елементів, розташованих за мінімальним. p>
Програма:program S2_Z5;type m = array [1 .. 100] of integer; mas = array [1 .. 10] of m;var A: mas; p>
procedure vvod (kn: integer; x: mas);var y: m; i, t, k, min, k0: integer;beginfor k: = 1 to kn do begink0: = 0; min: = 1000;writeln ( 'введіть кількість ел-ів в', k, '-му масиві'); read (t);writeln ( 'тепер введіть елементи цього масиву');for i: = 1 to t doread (y [i]);for i: = 1 to t doif y [i] 1 do begin k: = k +1; delete (p, 1, pos ( '', p)); end;str (k, pk); insert (pk, s, length (s) +1); writeln (buf, s); end;close (f); close (buf);erase (f);rename (buf, 'c: f.txt');end; p>
procedure w (var f: ft);var s: string;begin writeln ( 'змінений фаил буде виглядати так:');reset (f);while not eof (f) do begin readln (f, s); writeln (s)end; close (f);end; p>
beginwriteln ( 'введіть кількість рядків у файлі'); readln (k);sozd (f1, k); kslov (f1); w (f1);end. p>
Блок схема: p>
p>