Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Пример 5.2 выполнения задания

Читайте также:
  1. I Пример слияния в MS WORD 2003. Изучите материал и выполните пример на компьютере.
  2. I. Задания для самостоятельной работы
  3. I. Задания для самостоятельной работы
  4. I. Задания для самостоятельной работы
  5. I. Задания для самостоятельной работы
  6. I. Задания для самостоятельной работы
  7. I. Задания для самостоятельной работы

Составить функцию для вычисления среднего арифметического элементов одномерного массива. Использовать эту функцию для формирования массива средних арифметических значений элементов каждой строки матрицы A(m,n), m≤12, n≤11.

 

program Fun1;

{$APPTYPE CONSOLE}

uses

SysUtils;

const

mMax=12; nMax=11;

type

tStrk=array[1.. nMax] of Real;

tMatr=array[1.. mMax] of tStrk;

tStlb=array[1.. mMax] of Real;

 

//Функция вычисления среднего арифметического

//элементов одномерного массива

function Sred(const B:tStrk; n:Integer):Real;

var

i:Integer;

begin

Result:=0;

for i:=1 to n do

Result:= Result+B[i];

Result:= Result/n;

end; //конец функции Sred

 

var

A: tMatr; //Массив исходной матрицы

StrkA: tStrk; //Массив строки матрицы

SredStrkA: tStlb; //Массив средних значений строк матрицы

m,n,i,j:Integer;

 

begin // РАЗДЕЛ ОПЕРАТОРОВ ПРОГРАММЫ

WriteLn('Введите количество строк и столбцов');

ReadLn(m,n);

WriteLn('Введите матрицу по строкам');

for i:=1 to m do

begin

for j:=1 to n do

Read(a[i,j]);

ReadLn;

end;

//Вычисление средних арифметических

//значений в строках матрицы

for i:=1 to m do

SredStrkA [i]:=Sred(A[i],n); //Обращение к функции

//Вывод матрицы по строкам и правее

//каждой строки - её среднего арифметического

WriteLn('Исходная матрица и средние арифметические');

for i:=1 to m do

begin

for j:=1 to n do

Write(a[i,j]:6:1,' '); //Вывод строки матрицы

//Вывод её среднего арифметического

WriteLn(' ', SredStrkA[i]:6:2);

end;

ReadLn;

end.

 

Можно поставленную задачу решить и по-другому, если функция должна работать непосредственно с матрицей. Функция в этом случае возвращает сразу сформированный массив средних арифметических.

 

program Fun1a;

{$APPTYPE CONSOLE}

uses

SysUtils;

const

mMax=12; nMax=11;

type

tStrk=array[1.. nMax] of Real;

tMatr=array[1.. mMax] of tStrk;

tStlb=array[1.. mMax] of Real;

 

//Функция вычисления среднего арифметического

//элементов строк матрицы

function Sred(const B: tMatr; m,n:Integer):tStlb;

var

i,j:Integer; S:Real;

begin

for i:=1 to m do

begin

S:=0;

for j:=1 to n do

S:= S +B[i,j];

Sred[i]:=S/n

end;

end; //конец функции Sred

var

A: tMatr; //Массив исходной матрицы

SredStrkA: tStlb; //Массив средних значений строк матрицы

m,n,i,j:Integer;

 

begin // РАЗДЕЛ ОПЕРАТОРОВ ПРОГРАММЫ

WriteLn('Введите количество строк и столбцов');

ReadLn(m,n);

WriteLn('Введите матрицу по строкам');

for i:=1 to m do

begin

for j:=1 to n do

Read(a[i,j]);

ReadLn;

end;

//Вычисление средних арифметических

//значений в строках матрицы

SredStrkA:=Sred(A,m,n);

//Вывод матрицы по строкам и правее

//каждой строки - её среднее арифметическое

WriteLn('Исходная матрица и средние арифметические');

for i:=1 to m do

begin

//Вывод строки матрицы

for j:=1 to n do

Write(a[i,j]:6:1,' ');

//Вывод её среднего арифметического

WriteLn(' ', SredStrkA[i]:6:2);

end;

ReadLn;

end.


Дата добавления: 2015-07-26; просмотров: 72 | Нарушение авторских прав


Читайте в этой же книге: Процедуры | Список формальных параметров | Задания 5.1 для самостоятельной проработки | Рекурсивные подпрограммы | Пример выполнения задания на составление рекурсивной подпрограммы | Параметры - открытые массивы | Динамические массивы | Примеры программ с подпрограммами |
<== предыдущая страница | следующая страница ==>
Обращение к функции| Задания 5.2 для самостоятельной проработки

mybiblioteka.su - 2015-2024 год. (0.008 сек.)