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

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

17.04.2015, 20:45. Показов 1316. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
В каждой строке матрицы поменять местами максимальный
элемент с элементом побочной диагонали и вывести
полученную матрицу в другой таблице

Сделал так :
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
 for i:=0 to stringgrid1.rowCount-1 do
begin
    min:=0;
    max:=0;
    for j:=1 to stringgrid1.ColCount-1 do
    begin
         if strtoint(stringgrid1.cells[i,j])>strtoint(stringgrid1.cells[i,max]) then
            max:=j;
         if strtoint(stringgrid1.cells[i,j])<strtoint(stringgrid1.cells[i,min]) then
            min:=j;
         if min=max then
            messagedlg('все элементы в строке '+inttostr(i)+' равны', mtwarning, [mbok], 0);
    end;
    a:=stringgrid2.cells[stringgrid2.colcount-i-1, i];
    stringgrid2.cells[stringgrid2.colcount-i-1,i]:=stringgrid2.cells[max,i];
    stringgrid2.cells[max,i]:=a;
end;
end;
end;
Но ничего не получается , не хочет менять максимальный элемент строки на элемент побочной диагонали.
Помогите пожалуйста .
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.04.2015, 20:45
Ответы с готовыми решениями:

Дан двумерный массив B размера m*m. Поменять местами максимальный элемент в главной диагонали матрицы с минимальным элементом в побочной диагонали
Дан двумерный массив B размера m*m. Поменять местами максимальный элемент в главной диагонали...

Поменять местами максимальный элемент в каждой строке матрицы с элементом главной диагонали
Нужно в заданной квадратной матрице поменять местами максимальный элемент в строке с элементом...

В каждой строке матрицы найти максимальный элемент, и поменять его местами с элементом главной диагонали
В двумерном массиве, состоящем из n×m элементов, в каждой строке найти максимальный элемент и...

В квадратной матрице в каждой строке поменять местами максимальный элемент с элементом на главной диагонали.
Доброго времени суток! :) Задача такая: В квадратной матрице C(MxM) в каждой строке поменять...

3
Почетный модератор
64304 / 47599 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
17.04.2015, 21:03 2
Цитата Сообщение от Champloo Посмотреть сообщение
В каждой строке матрицы
А у Вас и матрицы нет. Таблица ведь нужна только для вывода матриц,а не для работы с матрицей.
0
0 / 0 / 0
Регистрация: 17.04.2015
Сообщений: 3
17.04.2015, 21:12  [ТС] 3
У меня конечно же есть матрица , я лишь хочу найти ошибку в коде , который не меняет в матрице местами элементы.
Запустив программу , матрица задается рандомно в таблицу , а в следующей таблице мне нужна матрица уже с поменявшимися элементами!
0
Почетный модератор
64304 / 47599 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
18.04.2015, 06:20 4
Ну так и делайте все с матрицей, а потом запишите матрицу во вторую таблицу.
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
//матрица наверное динамическая?
for i:=0 to n-1 do
 begin
  max:=0;
  for j:=1 to n-1 do
  if x[i,j]>x[i,max] then  max:=j;//находим номер максимального
  if max<>n-i-1 then //если он не на побочной диагонали
                     //(для статистического масива x[i,n-i+1])
   begin
    a:=x[i,max];
    x[i,max]:=x[i,n-i-1];//обмениваем местами
    x[i,n-i-1]:=a;
   end;
 end;
//и заносим измененную матрицу в таблицу 2
1
18.04.2015, 06:20
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.04.2015, 06:20
Помогаю со студенческими работами здесь

Максимальный элемент в каждой строке поменять местами с элементом главной диагонали.Полученную матрицу распечатать
Максимальный элемент в каждой строке поменять местами с элементом главной диагонали.Полученную...

В каждой строке матрицы поменять местами минимальный элемент и элемент побочной диагонали
Помогите, а то я не бум бум)):wall: Задана матрица Х, где N&lt;=15. В каждой строке матрицы поменять...

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

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

В каждой строке матрицы поменять местами максимальный элемент и элемент, находящийся на главной диагонали
Добрый Дня Всем! Столкнулся с проблемой в решении задания: В квадратной матрице С размера m*m в...

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


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

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

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