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

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

17.12.2013, 18:34. Показов 1137. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте! Вот моя задача, которую я попытался решить:
"Определить значение среднего арифметического ("SR") всего массива . Заменить в каждой строке массива минимальный элемент на значение SR. Выдать на печать преобразованный массив."

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

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
45
46
47
48
49
50
51
52
Program matr;
const 
     N1=4{10};
     M1=3{15};
var 
    L: array [1..N1,1..M1] of real;
    N,M: byte;
    i,j: integer;
    SR,S,min: real;
    
BEGIN
writeln ('Введите кол-во элементов в матрице');
readln (N,M);
for i:= 1 to N do
  for j:=1 to M do
     begin
           write ('L[',i,',',j,']=');
           readln (L[i,j]);
     end;
    writeln ('Ввод матрицы завершен'); 
     
for i:= 1 to N do
  S:=0;
  for j:=1 to M do
     S:=S+L[i,j];
     SR:=S/(N*M);
     writeln('SR=',SR:2:2);
          
  for i:=1 to N do
           {begin}
              min:=L[i,1];
              for j:=1 to M do
                if L[i,j]<min then
                  min:=L[i,j];
                  writeln('min=',min);  
            {end;}
        
  for i:= 1 to N do    
  for j:=1 to M do {ошибка, я думаю, где-то в этом блоке (может бегин-энд не поставил,может скобки забыл х.з.)}
    if L[i,j]=min then 
       L[i,j]:=SR;
  
               
writeln ('матрица L:');  
for i:=1 to N do
   begin
      for J:=1 to M do
      Write(L[i,j]);
      writeln;
   end;
writeln ('Вывод матрицы заверцен');
END.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.12.2013, 18:34
Ответы с готовыми решениями:

Заменить все элементы массива, меньшие среднего арифметического, значением среднего арифметического
В одномерном массиве целых чисел заменить все элементы, меньшие среднего арифметического,значением...

Определить значение среднего арифметического отрицательных элементов
Даны две матрицы А и В. Для каждой определить значение среднего арифметического отрицательных...

Вывести количество элементов массива, значение которых больше среднего арифметического
Дан двумерный квадратный массив из 16 элементов.Написать программу, которая находит и выводит...

Найти количество элементов массива, значение которых больше среднего арифметического
Дан массив. Найти количество элементов, значение которых больше среднего арифметического...

3
79 / 73 / 66
Регистрация: 11.04.2013
Сообщений: 221
17.12.2013, 19:29 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
45
46
47
48
49
50
51
Program matr;
const
     N1=4{10};
     M1=6{15};
var
    L: array [1..N1,1..M1] of real;
    N,M: byte;
    i,j: integer;
    SR,S,min: real;
 
BEGIN
writeln ('êîëè÷åñòâî ýëåìåíòîâ â ìàòðèöå');
readln (N,M);
for i:= 1 to N do
  for j:=1 to M do
     begin
           write ('L[',i,',',j,']=');
           readln (L[i,j]);
     end;
    writeln ('ââîä ìàòðèöû çàâåðøåí');
S:=0;
for i:= 1 to N do
  for j:=1 to M do
     S:=S+L[i,j];
     SR:=round(S/(N*M));
     writeln('SR=',SR:2:2);
 
  for i:=1 to N do
      min:=L[i,1];
              for j:=2 to M do begin
                if L[i,j]<min then
                  min:=L[i,j];
                  end;
                  writeln('min=',min);
 
 
  for i:= 1 to N do
  for j:=1 to M do begin{??????, ? ?????, ???-?? ? ???? ????? (????? ?????-??? ?? ????????,????? ?????? ????? ?.?.)}
    if L[i,j]=min then
       L[i,j]:=SR
       end;
 
writeln ('ìàòðèöà L:');
for i:=1 to N do begin
     writeln;
      for J:=1 to M do
      Write(L[i,j],' ');
      end;
 
writeln ('âûâîä ìàòðèöû çàâåðøåí');
END .
0
0 / 0 / 0
Регистрация: 12.12.2013
Сообщений: 5
17.12.2013, 20:10  [ТС] 3
Нет не получилось! Он заменяет только последний найденный минимальный элемент матрицы, а должен в каждой строке найти минимумы и эти минимумы заменить на среднее SR.
0
79 / 73 / 66
Регистрация: 11.04.2013
Сообщений: 221
18.12.2013, 00:04 4
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Ну как нет, если он в каждой строке находит минимумы и заменяет на среднее...

Добавлено через 34 минуты
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
45
46
47
Program matr;
const
     N1=4{10};
     M1=6{15};
var
    L: array [1..N1,1..M1] of real;
    N,M: byte;
    i,j: integer;
    SR,S,min: real;
 
BEGIN
writeln ('êîëè÷åñòâî ýëåìåíòîâ â ìàòðèöå');
readln (N,M);
for i:= 1 to N do
  for j:=1 to M do
     begin
           write ('L[',i,',',j,']=');
           readln (L[i,j]);
     end;
    writeln ('ââîä ìàòðèöû çàâåðøåí');
S:=0;
for i:= 1 to N do
  for j:=1 to M do
     S:=S+L[i,j];
     SR:=S/(N*M);
     writeln('SR=',SR:2:2);
 
  for i:=1 to N do begin
      min:=L[i,1];
              for j:=1 to M do begin
                if (L[i,j] <= min) then
                  min:=L[i,j]; end;
                  writeln('min',i,'=',min);
              for j:=1 to M do
                if L[i,j]=min then L[i,j]:=SR;
                end;
 
 
writeln ('ìàòðèöà L:');
for i:=1 to N do begin
     writeln;
      for J:=1 to M do
      Write(L[i,j],' ');
      end;
 
writeln ('âûâîä ìàòðèöû çàâåðøåí');
END .
Добавлено через 30 секунд
Вот исправил.
0
18.12.2013, 00:04
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.12.2013, 00:04
Помогаю со студенческими работами здесь

Вывести среднее значение массива и количество чисел больших среднего арифметического
Дан линейный массив целых чисел. Вывести среднее значение массива и количество чисел больших...

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

Определить количество элементов массива, меньших среднего арифметического значения
В массиве, состоящем из n элементов, определить количество элементов меньших среднего...

Найти количество элементов массива, абсолютное значение которых больше среднего арифметического
Задан целочисленный массив, состоящий из 10 эелементов.Найти кол-во элементов, абсолютное значение...


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

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

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