Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
6 / 0 / 1
Регистрация: 24.12.2012
Сообщений: 21

Поменять местами первую строку со строкой проходящей через наибольший по модулю элемент побочной диагонали

03.01.2013, 03:22. Показов 1305. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Задана целочисленная матрица Н(1..n.1..n). Поменять местами первую строку со строкой проходящей через наибольший по модулю элемент побочной диагонали.
Формирование массива Н выполнить в процедуре, ввод и вывод матрицы осуществить во внешнем блоке.
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
03.01.2013, 03:22
Ответы с готовыми решениями:

Поменять местами первую строку со строкой проходящей через наибольший по модулю элемент побочной диагонали.
Задана целочисленная матрица H . Поменять местами первую строку со строкой проходящей через наибольший по модулю элемент побочной...

Поменять местами строку и столбец, проходящие через наибольший элемент главной диагонали
Всем приветик) Извините что так много задачек, но поймите сложновато мне с программированием(( за конфетку ;) 2)Задана матрица...

В каждой строке матрицы поменять местами наибольший элемент и элемент на побочной диагонали
Найти в каждой строке наибольший элемент и поменять его местами с элементом побочной диагонали.

1
durila :d
 Аватар для baquaqa
125 / 107 / 98
Регистрация: 21.12.2012
Сообщений: 160
03.01.2013, 04:03
Лучший ответ Сообщение было отмечено Allen Wolker как решение

Решение

Здравствуйте.
вариант решения:
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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
program _matrix;
 
const
 
 N  = 5;
 
type 
 
 TMatrix   = array [1..N, 1..N] of integer;
 TPosition = record
  i     : byte;
  j     : byte;
  val   : integer;
 end;
 
 
var
 
 Matrix     : TMatrix;
 Max        : TPosition;
 
procedure FillMatrix(var MTR : TMatrix;rnd : boolean;lb,rb:integer);
{процедура заполнения матрицы значениями из (lb,rb)
 rnd=true - случайнo rnd=false - вручную           } 
 var  
  i,j       : byte;
  x         : integer;
 function RandomInt(a,b:integer):integer;
 {возвращает случайное целое из (a;b)}
  var
   x        : integer;
   sign     : 0..1;
  begin
   x:=0;
   if a<=b then 
    begin
     if b<0 then 
      repeat 
       x:=-random(Abs(a))
      until (x>a) and (x<b);
    if b>0 then 
     repeat 
      x:=random(b);
      sign:=random(2);
      if sign>0 then x:=-x;
     until (x>a) and (x<b);
   end;
  RandomInt:=x;   
 end;
begin
 Writeln();
 case rnd of 
    TRUE : begin
            for i:=1 to N do 
            for j:=1 to N do 
            MTR[i,j]:=RandomInt(lb,rb);
           end;
    FALSE: begin
            for i:=1 to N do 
            for j:=1 to N do 
             begin
              repeat
               write('[',i,',',j,',]: ' );
               readln(x);
              until (x>lb) and (x<rb);
              MTR[i,j]:=x;
             end;
           end;
 end;   
 writeln();
end;
 
procedure PrintMatrix(const MTR : TMatrix);
{процедура вывода матрицы на экран      }
 var
  i,j       : integer;
begin
 writeln();
 for i:=1 to N do begin
 for j:=1 to N do write(MTR[i,j]:3,' ');
                  writeln();
                  end;
 writeln();               
end;
 
procedure SwapLines(var MTR : TMatrix; a,b : integer);
{   процедура меняет местами строки матрицы 
              с номерами a,b              }
 var
  i         : integer;
  temp      : array [1..N] of integer;
begin
for i:=1 to N do temp[i] := MTR[a,i];
for i:=1 to N do MTR[a,i]:= MTR[b,i];
for i:=1 to N do MTR[b,i]:= temp[i];
end; 
 
function GetAbsMaxOnSD(const MTR: TMatrix):TPosition;
{ возвращает максимальный по модулю эл-нт побочной диагонали матрицы}
var 
 Max        : TPosition;
 i          : byte;
begin
 Max.i:=1;Max.j:=N;Max.val:=Abs(MTR[1,N]);
 for i:=1 to N do if Max.val<Abs(MTR[i,N+1-i])
                    then begin
                          Max.i:=i;Max.j:=N+1-i;
                          Max.val:=Abs(MTR[i,N+1-i]);
                         end;
 GetAbsMaxOnSd:=Max;
end;
 
BEGIN
 
{ fill & print Matrix }
 randomize;
 FillMatrix(Matrix,true,-100,100); { false если вручную}
 writeln('form. matrix: ');
 PrintMatrix(Matrix);
 
{ process. & output }
 Max:=GetAbsMaxOnSD(Matrix);
 Writeln('abs Max on secondary diagonal: ',max.val);
 SwapLines(Matrix,1,max.i);
 Writeln('modif. matrix: ');
 Printmatrix(Matrix);
END.
компилировался в PascalABC.net & FPC
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
03.01.2013, 04:03
Помогаю со студенческими работами здесь

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

В матрице поменять местами первую строку и строку, содержащую наибольший элемент матрицы
Помогите сделать работы через функции и процедуры... 1)Дан массив b1,b2…b2n . Написать программу построения массивов x1,x2…xn и...

Поменять местами последнюю строку со строкой, содержащей наибольший отрицательный элемент матрицы
В заданной матрице поменять местами последнюю строку со строкой, содержащей наибольший отрицательный элемент матрицы.Если можно на c++ dos...

В матрице поменять местами строку, содержащую наибольший элемент, со строкой, содержащей наименьший
Задание: В данной действительной матрице размера mn поменять местами строку, содержащую элемент с наибольшим значением, со строкой,...

Поменять местами первую строку матрицы с той строкой, где находится максимальный элемент
Задана матрица А(4,4). Если максимальный элемент матрицы равен сумме элементов первой строки, то поменять местами первую строку с той...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru