Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > C++ Builder
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.11.2012, 09:38   #1
Klasky
Новичок
Джуниор
 
Регистрация: 19.11.2012
Сообщений: 1
По умолчанию минимальный элемент на главной диагонали

собственно нужно определить минимальный элемент на главной диагонали в матрице 3х3, подскажите пожалуйста
Klasky вне форума Ответить с цитированием
Старый 19.11.2012, 12:22   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Собственно нужно просто сравнивать элементы Матрицы[i][i] с некой переменкой, хранящей минимум. Если элемент меньше, присвоить его в эту переменку.
Делать это нужно в цикле (одном цикле) с помошью оператора условия if().
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 19.11.2012, 13:08   #3
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

не знаю C, поэтому напишу пример на чём-то, отдалённо похожем на C:
Код:
int iMin = 0;
for (int i=1; i<3; i++)
{
  if (A[i][i]<A[iMin][iMin])
  {  
      iMin = i
  }
}

// выдать элемент A[iMin][iMin] как минимальный
Serge_Bliznykov вне форума Ответить с цитированием
Старый 19.11.2012, 14:59   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
на чём-то, отдалённо похожем на C
В твоей интерпретации это "что-то отдаленное" и есть Си, если учесть что ты запятую провтыкал (хотя по сути она там не требуется)
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 20.11.2012, 01:40   #5
sancho.malyutin
 
Регистрация: 18.11.2012
Сообщений: 4
По умолчанию

min=Array[0][0]; // минимальным считаем первый элемент главной диагонали
for(i=0;i<3;i++) //цикл по строкам массива
for(j=0;j<3;j++){ //по столбцам
if(i==j)
if(Array[i][j]<min) min=Array[i][j];
}
сout<<min<<endl;
sancho.malyutin вне форума Ответить с цитированием
Старый 20.11.2012, 06:32   #6
Smitt&Wesson
Старожил
 
Аватар для Smitt&Wesson
 
Регистрация: 31.05.2010
Сообщений: 13,543
По умолчанию

Serge_Bliznykov, ошибка в коде. После iMin - точка с запятой. Если используется один оператор, скобки можно не ставить.
Код:
int iMin = 0;
for (int i=1; i<3; i++) if (A[i][i]<A[iMin][iMin])  iMin = i;
sancho.malyutin, решение вообще не по условию.
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder
Smitt&Wesson вне форума Ответить с цитированием
Старый 20.11.2012, 08:59   #7
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Smitt&Wesson, спасибо, я знаю. (про точку запятой каюсь, забыл, а фигурные скобки нарисовал для того, чтобы TC было нагляднее).
Но, тем не менее, с вашим замечанием полностью согласен, спасибо за правку.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 20.11.2012, 09:23   #8
Luuzuk
Форумчанин
 
Аватар для Luuzuk
 
Регистрация: 18.01.2012
Сообщений: 975
По умолчанию

Ну если матрица так жестко задана (3 на 3)... )))
Код:
int iMin = A[0][0] < A[1][1]? A[0][0] < A[2][2] ? A[0][0] : A[2][2]: A[1][1] < A[2][2] ? A[1][1] : A[2][2];
Благодарить в репутацию. Проклинать — туда же

Последний раз редактировалось Luuzuk; 20.11.2012 в 09:28. Причина: Второй вариант на шарпе написал, привычка (
Luuzuk вне форума Ответить с цитированием
Старый 20.11.2012, 19:17   #9
sancho.malyutin
 
Регистрация: 18.11.2012
Сообщений: 4
По умолчанию

Цитата:
Сообщение от Smitt&Wesson Посмотреть сообщение
Serge_Bliznykov, ошибка в коде. После iMin - точка с запятой. Если используется один оператор, скобки можно не ставить.
Код:
int iMin = 0;
for (int i=1; i<3; i++) if (A[i][i]<A[iMin][iMin])  iMin = i;
sancho.malyutin, решение вообще не по условию.
главная диагональ у кавдратной матрицы находится как i=j. что сдесь не втему?)
sancho.malyutin вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
минимальный элемент побочной диагонали С++ builder 2006 Настя C++ builder C++ Builder 20 09.08.2012 01:11
Все элементы выше главной диагонали квадратной матрицы, заменить на минимальный элемент (VisualBasic) ride013 Помощь студентам 4 03.05.2011 20:40
Максимальный элемент выше главной диагонали матрицы (C#) Dj_SheLL Помощь студентам 2 14.02.2011 23:21
найти максимальный элемент на главной диагонали. паскаль Nirvanovec Фриланс 8 25.01.2010 22:38
Маx элемент ниже главной диагонали Отчаявшаяся Помощь студентам 2 16.11.2009 18:19