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

Разработать процедуру вычисления суммы элементов побочной диагонали и поставить эту сумму на место максимально

19.12.2014, 18:52. Показов 745. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Дан целочисленный массив a(n,n), n=5. Разработать процедуру вычисления суммы элементов побочной диагонали и поставить эту сумму на место максимального элемента этой диагонали.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
19.12.2014, 18:52
Ответы с готовыми решениями:

Найти сумму элементов главной диагонали матрицы и эту сумму поставить на место последнего элемента
Дана матрица A(3,4). Найти сумму элементов главной диагонали и эту сумму поставить на место...

Дана матрица A(3,4). Найти сумму элементов главной диагонали и эту сумму поставить на место последнего
Дана матрица A(3,4). Найти сумму элементов главной диагонали и эту сумму поставить на место...

Найти сумму элементов главной диагонали матрицы и эту сумму поставить на место последнего элемента
дана матрица А(3,4). Найти сумму элементов главной диагонали и эту сумму поставить на место...

Найдите сумму Суммы отрицательных элементов главной диагонали и произведение нечетных элементов побочной диагонали матри
Найдите сумму Суммы отрицательных элементов главной диагонали и произведение нечетных элементов...

8
Эксперт Pascal/Delphi
6807 / 4565 / 4818
Регистрация: 05.06.2014
Сообщений: 22,438
19.12.2014, 20:07 2
Постарайтесь процедуру оформить самостоятельно.
Изначально: (С) Puporev
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
uses crt;
const nmax=20;
var x:array[1..nmax,1..nmax] of integer;
    n,i,j:byte;
    jmax,imax,max,sm:integer;
begin
clrscr;
randomize;
repeat
write('Размер матрицы=');
readln(n);
until n in [1..nmax];
writeln('Исходная матрица:');
sm:=0;
max:=x[1,1];
for i:=1 to n do
 begin
   for j:=1 to n do
    begin
     x[i,j]:=random(20);
     write(x[i,j]:4);
     if j=n-i+1 then
       begin
         sm:=sm+x[i,j];
         if x[i,j]>max then
         begin
           imax:=i;
           jmax:=j;
           max:=x[i,j];
         end;
       end;
    end;
   writeln;
 end;
writeln;
writeln('Сумма элементов побочной диагонали=',sm);
writeln('Максимум элементов побочной диагонали=',max);
x[imax,jmax]:=sm;
readln
end.
1
0 / 0 / 0
Регистрация: 14.12.2014
Сообщений: 9
20.12.2014, 11:59  [ТС] 3
ZX Spectrum-128, Как поставить сумму элементов побочной диагонали на место максимального элемента побочной диагонали?
Эта программа только выводит сумму и максимальный элемент ПД, но не ставит на место..
0
Эксперт Pascal/Delphi
6807 / 4565 / 4818
Регистрация: 05.06.2014
Сообщений: 22,438
20.12.2014, 12:04 4
Sergey09, в строке 38
Pascal
1
x[imax,jmax]:=sm;
Выведите еще раз массив, чтобы увидеть.
1
0 / 0 / 0
Регистрация: 14.12.2014
Сообщений: 9
20.12.2014, 12:29  [ТС] 5
ZX Spectrum-128, все получилось, спасибо большое!
0
0 / 0 / 0
Регистрация: 14.12.2014
Сообщений: 9
21.12.2014, 19:08  [ТС] 6
ZX Spectrum-128, как написать процедуру?
0
Эксперт Pascal/Delphi
6807 / 4565 / 4818
Регистрация: 05.06.2014
Сообщений: 22,438
23.12.2014, 12:43 7
Процедуру которую? Заполнения массива, вывода или нахождения максимума?
0
0 / 0 / 0
Регистрация: 14.12.2014
Сообщений: 9
23.12.2014, 17:31  [ТС] 8
ZX Spectrum-128, нахождения суммы и максимального элемента ПД.
0
Эксперт Pascal/Delphi
6807 / 4565 / 4818
Регистрация: 05.06.2014
Сообщений: 22,438
24.12.2014, 09:35 9
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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
uses
  crt;
const
  nmax=20;
type
  matr=array[1..nmax,1..nmax] of integer;
var
  x:matr;
  n,i,j:byte;
  jm,im,mx,sum:integer;
 
procedure SumOfSideDiagonal(a:matr; var sm:integer);
var
  i,j:byte;
begin
  sm:=0;
  for i:=1 to n do
    for j:=1 to n do
      if j=n-i+1 then
        sm:=sm+a[i,j];
end;
 
procedure MaxOfSideDiagonal(a:matr; var max,imax,jmax:integer);
var
  i,j:byte;
begin
  max:=a[1,1];
  for i:=1 to n do
    for j:=1 to n do
      if j=n-i+1 then
        if a[i,j]>max then
          begin
            imax:=i;
            jmax:=j;
            max:=a[i,j];
          end;
end;
 
begin
  clrscr;
  randomize;
  repeat
    write('Размер матрицы=');
    readln(n);
  until n in [1..nmax];
  writeln('Исходная матрица:');
  for i:=1 to n do
    begin
      for j:=1 to n do
        begin
          x[i,j]:=random(20);
          write(x[i,j]:4);
       end;
   writeln;
 end;
  writeln;
  SumOfSideDiagonal(x,sum);
  writeln('Сумма элементов побочной диагонали: ',sum);
  MaxOfSideDiagonal(x,mx,im,jm);
  writeln('Максимум элементов побочной диагонали: ',mx);
  x[im,jm]:=sum;
  writeln('Преобразованная матрица:');
  for i:=1 to n do
    begin
      for j:=1 to n do
        write(x[i,j]:4);
      writeln;
    end;
  readln;
end.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.12.2014, 09:35
Помогаю со студенческими работами здесь

Найти сумму элементов главной диагонали и поставить на место последнего элемента
Дана матрица A(3,4). Найти сумму элементов главной диагонали и эту сумму поставить на место...

Проверить утверждение: сумма элементов выше побочной диагонали больше суммы элементов ниже побочной диагонали
дана квадратная матрица натуральных чисел получаемая через rand.определить,верно ли утверждение:...

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

[Функции] Работа с матрицей (организовать функцию для вычисления суммы положительных элементов, размещенных на побочной диагонали)
Господа не прошло и получаса, а мне вновь нужна помощь портала. Задача: Составить программу, в...


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

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

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