Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Инфа Шпора Экзамен.doc
Скачиваний:
2
Добавлен:
26.09.2019
Размер:
118.78 Кб
Скачать

13) Дана матрица а(NхN).

Найти сумму элементов главной диагонали

и произведение элементов побочной диагонали.

Вывести исходную матрицу,

полученную сумму и произведение.

program num13;

const max = 100;

Var a: array[1..Max,1..Max] of real;

I, j, n, k: integer;

proizvedenie, summa: real;

begin

writeln( 'Введите размер матрицы N' );

readln(n);

{Ââîä}

k:=1;

for i:=1 to n do

for j:=1 to n do begin

a[i][j]:=k;

inc(k);

end;

{Вывод}

writeln;

writeln( 'Исходная матрица:' );

for i:=1 to n do begin

for j:=1 to n do begin

write( a[i][j], ' ' );

end;

writeln;

end;

{Решение}

summa:=0;

for i:=1 to n do

summa:=summa+a[i][i];

proizvedenie:=1;

k:=n;

for i:=1 to n do begin

proizvedenie:=proizvedenie*a[i][k];

dec(k);

end;

{Вывод}

writeln;

writeln( 'Сумма элементов главной диагонали: ', summa );

writeln( 'Произведение элементов побочной диагонали: ', proizvedenie );

end.

14) Дана матрица а(МхN).

Определить среднее арифметическое

от минимального и максимального

элемента матрицы.

program num14;

const maxm=100;

maxn=100;

type matrix = array[1..maxm,1..maxn] of real;

Var I, j, m, n: integer;

a: matrix;

min, max, sr: real;

begin

writeln( 'Введите M' );

readln(m);

writeln( 'Введите N' );

readln(n);

{Ââîä}

randomize;

for i:=1 to m do

for j:=1 to n do

a[i][j]:=random(20);

{Вывод}

writeln;

writeln( 'Матрица:' );

for i:=1 to m do begin

for j:=1 to n do begin

write( a[i][j], ' ' );

end;

writeln;

end;

{Решение}

min:=a[1][1];

max:=a[1][1];

for i:=1 to m do

for j:=1 to n do begin

if a[i][j] < min then min:=a[i][j];

if a[i][j] > max then max:=a[i][j]

end;

sr:=(min+max)/(m*n);

{Вывод}

writeln;

writeln( 'Максимальный: ', max );

writeln( 'Минимальный: ', min );

writeln( 'Среднее арифметическое: ', sr );

end.

15) Дана матрица а(NхМ).

Получить новую матрицу на месте старой,

переставив при этом первую и

предпоследнюю строки.

program num15;

const maxm = 100;

maxn = 100;

type row = array[1..maxm] of real;

matrix = array[1..maxn] of row;

var tmp: row;

a: matrix;

I, j, n, m, k: integer;

begin

writeln( 'Введите размер матрицы N' );

readln(n);

writeln( 'Введите размер матрицы M' );

readln(m);

{Ââîä}

k:=1;

for i:=1 to n do

for j:=1 to m do begin

a[i][j]:=k;

inc(k);

end;

{Вывод}

writeln;

writeln( 'Исходная матрица:' );

for i:=1 to n do begin

for j:=1 to m do begin

write( a[i][j], ' ' );

end;

writeln;

end;

{Решение}

tmp:=a[1];

a[1]:=a[n-1];

a[n-1]:=tmp;

{Вывод}

writeln;

writeln( 'Исходная матрица:' );

for i:=1 to n do begin

for j:=1 to m do begin

write( a[i][j], ' ' );

end;

writeln;

end;

end.