1 / 1 / 0
Регистрация: 17.05.2015
Сообщений: 67
1

Составить подпрограмму вычисления среднего арифметического элементов вектора

31.03.2018, 14:51. Показов 2060. Ответов 14
Метки нет (Все метки)

Составить подпрограмму Вычисления среднего арифметического элементов вектора. Используя ее, преобразовать преобразовать квадратную матрицу следующим образом: диагональные элементы матрицы заменить средними арифметическими значениями элементов соответствующих строк.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
31.03.2018, 14:51
Ответы с готовыми решениями:

Составить подпрограмму вычисления среднего арифметического элементов вектора
Составить подпрограмму вычисления средне арифметического элементов вектора Используя ее...

Составить подпрограмму вычисления среднего арифметического элементов заданного участка массива
помогите решить задачу в паскале Дана таблица из 10 элементов. Составить подпрограмму вычисления...

Составить подпрограмму вычисления среднего арифметического отрицательных элементов в столбцах с нечетными номерами
Помогите решить задачу в паскале Дана таблица 5*6. Составить подпрограмму вычисления среднего...

Составить процедуру вычисления среднего арифметического элементов одномерного массива A[m]
Составить процедуру вычисления среднего арифметического элементов одномерного массива A, с помощью...

14
Почетный модератор
64276 / 47575 / 32739
Регистрация: 18.05.2008
Сообщений: 115,182
31.03.2018, 15:28 2
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
uses crt;
type mtr=array[1..10,1..10] of real;
function sred(a:mtr;n,k:integer):real;
var i:integer;
    s:real;
begin
s:=0;
for i:=1 to n do
s:=s+a[k,i];
sred:=s/n;
end;
var a:mtr;
    n,i,j:integer;
    x:real;
begin
clrscr;
repeat
write('Введите размер массива от 2 до 10 n=');
readln(n);
until n in [2..10];
writeln('Исходный массив');
randomize;
for i:=1 to n do
 begin
  for j:=1 to n do
   begin
    a[i,j]:=9*random;
    write(a[i,j]:5:2);
   end;
  writeln;
 end;
writeln('Измененный массив');
for i:=1 to n do
 begin
  x:=sred(a,n,i);
  for j:=1 to n do
   begin
    if(j=i)or(j=n-i+1) then a[i,j]:=x;
    write(a[i,j]:5:2);
   end;
  writeln;
 end;
readln
end.
1
Модератор
Эксперт Pascal/DelphiЭксперт NIX
7519 / 4383 / 2781
Регистрация: 22.11.2013
Сообщений: 12,545
Записей в блоге: 1
01.04.2018, 23:07 3
Задание про подпрограмму, относительно универсально ее можно сделать так:
Pascal
1
2
3
4
5
6
7
8
9
10
11
function Avg(const v: array of Real): Real;
var i: Integer; r: Real;
begin
  r:=0; for i:=0 to High(v) do r:=r+v[i];
  Avg:=r/(High(v)+1);
end;
{ ... }
  for i:=1 to n do begin
    t:=Avg(a[i]); a[i,i]:=t; a[i,n-i+1]:=t;
  end;
{ ... }
Добавлено через 3 минуты
Либо с возможностью использовать часть массива:
Pascal
1
2
3
4
5
6
7
8
9
10
11
function Avg(const v: array of Real; n: Integer): Real;
var i: Integer; r: Real;
begin
  r:=0; for i:=0 to n-1 do r:=r+v[i];
  Avg:=r/n;
end;
{ ... }
  for i:=1 to n do begin
    t:=Avg(a[i],n); a[i,i]:=t; a[i,n-i+1]:=t;
  end;
{ ... }
Добавлено через 1 минуту
Ах да, диагонали бывают не только в квадратных матрицах, если интересен и такой вариант, модифицировать несложно, оставим в качестве домашнего задания.
0
1 / 1 / 0
Регистрация: 17.05.2015
Сообщений: 67
15.04.2018, 20:24  [ТС] 4
Помогите разобраться с массивом ????
как мне нужно его вставить ????
0
Почетный модератор
64276 / 47575 / 32739
Регистрация: 18.05.2008
Сообщений: 115,182
15.04.2018, 20:28 5
Цитата Сообщение от Владимир199 Посмотреть сообщение
как мне нужно его вставить ????
Боком.
0
1 / 1 / 0
Регистрация: 17.05.2015
Сообщений: 67
15.04.2018, 20:31  [ТС] 6
спасибо очень приятно =)))) самый лучший ответ=)))
0
Модератор
Эксперт Pascal/DelphiЭксперт NIX
7519 / 4383 / 2781
Регистрация: 22.11.2013
Сообщений: 12,545
Записей в блоге: 1
15.04.2018, 20:32 7
Цитата Сообщение от Владимир199 Посмотреть сообщение
как мне нужно его вставить ????
А вам нужно? Куда? (гусары, молчать!)

Pascal
1
2
3
4
5
6
7
8
9
10
const n=5;
var
  a: array [1..n,1..n] of Integer;
  i, t: Integer;
begin
  { ... }
  for i:=1 to n do begin
    t:=Avg(a[i]); a[i,i]:=t; a[i,n-i+1]:=t;
  end;
  { ... }
0
1 / 1 / 0
Регистрация: 17.05.2015
Сообщений: 67
15.04.2018, 20:35  [ТС] 8
Мне нужно
вот это задание
Составить подпрограмму Вычисления среднего арифметического элементов вектора. Используя ее, преобразовать преобразовать квадратную матрицу следующим образом: диагональные элементы матрицы заменить средними арифметическими значениями элементов соответствующих строк.
но только с массивом =((((((((
0
Модератор
Эксперт Pascal/DelphiЭксперт NIX
7519 / 4383 / 2781
Регистрация: 22.11.2013
Сообщений: 12,545
Записей в блоге: 1
15.04.2018, 20:37 9
Как хорошо уметь читать!
Не надо к маме приставать,
Не надо бабушку трясти:
«Прочти, пожалуйста! Прочти!»
Не надо умолять сестрицу:
«Ну, почитай ещё страницу».
Не надо звать,
Не надо ждать,
А можно взять
И почитать!
--
(q) В.Берестов
0
1 / 1 / 0
Регистрация: 17.05.2015
Сообщений: 67
15.04.2018, 20:38  [ТС] 10
спасибо
0
Модератор
Эксперт Pascal/DelphiЭксперт NIX
7519 / 4383 / 2781
Регистрация: 22.11.2013
Сообщений: 12,545
Записей в блоге: 1
15.04.2018, 20:39 11
А в Поле чудес когда-то была страховка, могла бы быть почти на ту же тему: отгадал все буквы, не смог прочесть слово.
0
1 / 1 / 0
Регистрация: 17.05.2015
Сообщений: 67
15.04.2018, 20:51  [ТС] 12
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
uses crt;
type mtr=array[1..10,1..10] of real;
function Avg(const v: array of Real): Real;
var i: Integer; r: Real;
begin
  r:=0; for i:=0 to High(v) do r:=r+v[i];
  Avg:=r/(High(v)+1);
end;
var a:mtr;
    n,i,j:integer;
    x:real;
begin
clrscr;
repeat
write('Введите размер массива от 2 до 10 n=');
readln(n);
until n in [2..10];
writeln('Исходный массив');
randomize;
for i:=1 to n do begin
    t:=Avg(a[i],n); a[i,i]:=t; a[i,n-i+1]:=t;
  end;
  writeln;
 end;
writeln('Измененный массив');
for i:=1 to n do
 begin
  x:=sred(a,n,i);
  for j:=1 to n do
   begin
    if(j=i)or(j=n-i+1) then a[i,j]:=x;
    write(a[i,j]:5:2);
   end;
  writeln;
 end;
readln
end.
0
Модератор
Эксперт Pascal/DelphiЭксперт NIX
7519 / 4383 / 2781
Регистрация: 22.11.2013
Сообщений: 12,545
Записей в блоге: 1
15.04.2018, 21:18 13
Смешались в кучу кони, люди...

Берем сообщение 3, сообщение 7, объединяем, дописывая недостающее:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
function vAvg(const v: array of Real): Real;
var i: Integer; r: Real;
begin
  r:=0; for i:=0 to High(v) do r:=r+v[i];
  vAvg:=r/(High(v)+1);
end;
 
procedure vRandom(var v: array of Real);
var i: Integer;
begin
  for i:=0 to High(v) do v[i]:=(-50+Random(101))/10;
end;
 
procedure vWriteLn(const v: array of Real);
var i: Integer;
begin
  for i:=0 to High(v) do Write(v[i]:6:1); WriteLn;
end;
 
const n=5;
var
  a: array [1..n,1..n] of Real;
  t: Real;
  i: Integer;
begin
  Randomize;
  for i:=1 to n do vRandom(a[i]);
  WriteLn('A ='); for i:=1 to n do vWriteLn(a[i]);
  for i:=1 to n do begin t:=vAvg(a[i]); a[i,i]:=t; a[i,n-i+1]:=t; end;
  WriteLn('A''='); for i:=1 to n do vWriteLn(a[i]);
end.
0
1 / 1 / 0
Регистрация: 17.05.2015
Сообщений: 67
15.04.2018, 21:38  [ТС] 14
У меня не запускается или я
0
Модератор
Эксперт Pascal/DelphiЭксперт NIX
7519 / 4383 / 2781
Регистрация: 22.11.2013
Сообщений: 12,545
Записей в блоге: 1
15.04.2018, 21:57 15
Код
A =
  -1.0   3.1   2.4  -0.6  -4.9
   2.9   1.8  -3.2  -3.4   1.0
   4.5   3.8  -4.4  -4.0  -3.1
  -0.3  -3.9  -2.0   2.7  -4.9
   0.8  -2.4  -2.5   0.3  -2.7
A'=
  -0.2   3.1   2.4  -0.6  -0.2
   2.9  -0.2  -3.2  -0.2   1.0
   4.5   3.8  -0.6  -4.0  -3.1
  -0.3  -1.7  -2.0  -1.7  -4.9
  -1.3  -2.4  -2.5   0.3  -1.3
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.04.2018, 21:57
Помогаю со студенческими работами здесь

Составить программу вычисления среднего арифметического элементов матрицы А(6Х3), удовлетворяющих условиям /а/≥10
Составить программу вычисления среднего арифметического элементов матрицы А(6Х3), удовлетворяющих...

Составить программу вычисления среднего арифметического отрицательных значений и среднего геометрического положительных значений функции
Составить программу вычисления среднего арифметического отрицательных значений и среднего...

Подпрограмма нахождения среднего арифметического значения элементов вектора и её использование
Здравствуйте. Прошу помочь с решением задачи: Составить подпрограмму вычисления среднего...

Функция вычисления среднего арифметического элементов масива
Функция вычисления среднего арифметического элементов масива в Pascal . Чет препробовал много...

Вычисления среднего арифметического элементов массива с четными номерами
4.3. Составьте программу вычисления среднего арифметического элементов с четными номерами....

Составьте программу вычисления среднего арифметического элементов массива
Составьте программу вычисления среднего арифметического элементов массива


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru