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

Для каждого столбца массива найти среднее арифметическое элементов, у которых последняя цифра делит само число

03.05.2017, 06:15. Показов 2209. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Дан двумерный массив целых чисел. Написать программу, которая для каждого столбца массива находит среднее арифметическое элементов, у которых последняя цифра делит само число нацело.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.05.2017, 06:15
Ответы с готовыми решениями:

Удалить все элементы массива, в которых последняя цифра четная, а само число делится на неё
Дана массив (n), n <=20, заполненный случайными числами из интервала . Разработайте программу,...

Найти среднее арифметическое положительных элементов каждого столбца матрицы
Привет! Помогите пожалуйста Я должен найти среднее арифметическое положительных элементов...

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

Найти среднее арифметическое элементов для каждого из столбцов массива, имеющих четные номера
помогите пожалуйста ооч надо Пусть дано натуральное число n и вещественная матрица размером n*9....

7
80 / 80 / 78
Регистрация: 30.12.2015
Сообщений: 256
03.05.2017, 06:55 2
Цитата Сообщение от Allena_101 Посмотреть сообщение
последняя цифра делит само число нацело
А если последняя цифра "0" что делать?

Добавлено через 15 минут
Allena_101, если последняя цифра делит само число нацело и если последняя цифра не ноль

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
program prog;
const n=10;m=15;
  var a:array [1..n,1..m] of integer;
      b:array [1..m] of real;
      i,j,s,sum,k:integer;
begin
  randomize;
  for i:=1 to n do 
    begin
      for j:=1 to m do begin a[i,j]:=random(100);write(a[i,j]:3);end;
      writeln;
    end; 
    
  writeln; 
  for i:=1 to m do 
    begin
      sum:=0;k:=0;
      for j:=1 to n do 
        begin 
          s:=a[j,i] mod 10; //write('  ',s);
          if s<>0 then 
            if a[j,i] mod s=0 then 
              begin 
                sum:=sum+a[j,i];inc (k);
              end;
        end;              
      b[i]:=sum/k;         
    end;
  for i:=1 to m do write(b[i]:5:1);             
end.
1
Модератор
Эксперт Pascal/DelphiЭксперт NIX
7648 / 4488 / 2809
Регистрация: 22.11.2013
Сообщений: 12,828
Записей в блоге: 1
06.05.2017, 08:57 3
VladimirD,
Pascal
27
  if k<>0 then b[i]:=sum/k;
Полезно гарантировать хотя бы один разделитель, даже если изменятся данные:
Pascal
29
  Write(' ',b[i]:5:1);
0
0 / 0 / 0
Регистрация: 11.05.2017
Сообщений: 4
11.05.2017, 17:43 4
Привет, скажи пожалуйста, а если задание такое же, но только в конце немного по другому вот так "Дан двумерный массив целых чисел. Написать программу, которая:
для каждой строки массива находит среднее арифметическое элементов,
у которых последняя цифра нечетная." то как тогда можно написать программу
0
80 / 80 / 78
Регистрация: 30.12.2015
Сообщений: 256
11.05.2017, 18:47 5
Ирма Коул, тебе

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
program prog;
const n=10;m=15;
  var a:array [1..n,1..m] of integer;
      b:array [1..m] of real;
      i,j,s,sum,k:integer;
begin
  randomize;
  for i:=1 to n do 
    begin
      for j:=1 to m do begin a[i,j]:=random(100);write(a[i,j]:3);end;
      writeln;
    end; 
    
  writeln; 
  for i:=1 to m do 
    begin
      sum:=0;k:=0;
      for j:=1 to n do 
        begin 
          s:=a[j,i] mod 10; // можно просто if odd(a[i,j] then 
          if odd (s) then //проверка на нечетность
              begin 
                sum:=sum+a[j,i];inc (k);
              end;
        end;
      if k<>0 then b[i]:=sum/k;          
    end;
  for i:=1 to m do write(b[i]:5:1);             
end.
хотя зачем проверять последнею цифру,
0
Модератор
Эксперт Pascal/DelphiЭксперт NIX
7648 / 4488 / 2809
Регистрация: 22.11.2013
Сообщений: 12,828
Записей в блоге: 1
12.05.2017, 13:49 6
VladimirD,
В отличие от Фортрана, где матрицы хранятся по столбцам, в Паскале принято построчное хранение. Поэтому лучше
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
var
  a:array [1..m,1..n] of integer;
...
  for i:=1 to m do begin
    sum:=0; k:=0;
    for j:=1 to n do begin
      a[i,j]:=Random(100);
      Write(a[i,j]:3);
      if Odd(a[i,j]) then begin
        sum:=sum+a[i,j]; Inc(k);
      end;
    if k>0 then Write(' | ',sum/k);
    WriteLn;
  end;
0
0 / 0 / 0
Регистрация: 11.04.2017
Сообщений: 34
12.05.2017, 16:23  [ТС] 7
А можно ли эту команду (27) inc (k); заменить так: k:=k+1 ?
0
80 / 80 / 78
Регистрация: 30.12.2015
Сообщений: 256
12.05.2017, 17:45 8
bormant, конечно i,j невнимательность (((

Allena_101, можно, заменяй
0
12.05.2017, 17:45
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.05.2017, 17:45
Помогаю со студенческими работами здесь

Для каждого массива вычислить среднее арифметическое и количество элементов
Ппмогите, пожалуйста составить программы: 1)Заданы три одномерных массива X, Y, Z. Количество...

Для каждого столбца массива найти среднее арифметическое элементов
Помогите составить условие в двумерном динамическом массиве for i:=0 to n-1 do begin for...

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

Для каждого столбца матрицы найти среднее арифметическое элементов, которые делятся нацело на последнюю цифру
1)программа для каждого столбца массива находит среднее арифметическое элементов, у которых...


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

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

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