Далее текст программы FortMinor на языке программирования IDE Borland Turbo Pascal 7.0, выполняющий вычисление среднего значения элементов, находящихся слева и справа от двух диагоналей.
Program FortMinor;
Const F=30;
uses crt;
var
i,j,L,n,pr: integer;
Sum,Sum1,Sum2,Sred: real;
W: array [1..F,1..F] of real;
str1:string;
begin
clrscr;
begin
repeat
Write ('Введите размер матрицы W, W<’,F);
Readln (str1);
val(str1,L,pr);
if pr<>0 then
writeln('Введено неверное значение. Повторите ввод.');
until pr=0;
end;
L:=odd(L);
For i:=1 to L do
for j:=1 to L do
begin
repeat
Write ('‚Введите элемент W[',i,',',j,']: ');
Readln(str1);
val(str1,W[i,j],pr);
if pr<>0 then
writeln('Введено неверное значение. Повторите ввод.');
until pr=0;
end;
writeln('Введеная матрица :');
For i:=1 to L do
begin
for j:=1 to L do
begin
Write (W[i,j]:4:1);
end;
writeln;
end;
Sum:=0;
n:=0;
For j:=1 to L div 2 do
for i:=j+1 to L-j do
begin
Sum1:=Sum1+W[i,j];
n:=n+1;
end;
For j:=L downto L div 2+2 do
for i:=j-1 downto L-j+2 do
begin
Sum2:=Sum2+W[i,j];
n:=n+1;
end;
Sum:=Sum1+Sum2;
if n>0 then
begin
Sred:=Sum/n;
writeln('Среднее арифметическое значение элементов матрицы W, ');
writeln(' расположенных слева и справа от диагоналей =', Sred:7:3);
end
else
begin
writeln (' Элементов, расположенных слева и справа от диагоналей матрицы W нет...');
Writeln;
Readln
end;
end.
Тестовый пример
3.7.1 Аналитическое решение
В качестве тестового примера возьмем матрицу А (рис. 15), с размером 5´5.
Рисунок 15 - Тестовая матрица A
Найдем элементы (рис. 16), расположенные слева и справа от двух диагоналей:
Рисунок 16 – Позиции элементов, расположенных слева и справа от двух диагоналей.
Всего таких элементов – 8. Их сумма равна: 6+1+2+3+5+6+7+2 = 32
Среднее арифметическое составляет: 32/8 = 4,0
3.7.2 Решение задачи с использованием разработанного ПО
А теперь проверим, как программа «FortMinor» справляется с подобной задачей. Пользователем были введены такие же данные, что и в тестовом примере. После этого была осуществлена проверка на безошибочность ввода размера матрицы и ее элементов, а затем заполненная матрица была выведена на дисплей. Следующим действием «FortMinor» определила нужные элементы матрицы, нашла и вывела их среднее значение (рис. 17).
Рисунок 17 - Вывод результатов.
Вывод - результат аналитического тестового примера совпал с результатом его же решения через программу, следовательно, программу «FortMinor» можно считать работоспособной.