Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Поиск min строки, содержащей max элемент 
:(
    Опции темы
zayats36
Дата 27.11.2011, 23:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 27.11.2011

Репутация: нет
Всего: нет



Никак не могу сообразить... Точнее могу, но получается полнейший бред и ахинея... Надеюсь вы поможете, ведь задача элементарная, вся проблема втом, что я только начинаю smile Код необходимо написать на c/c++

Исходные данные:

Квадратная матрица чисел с заданным заранее размером NxN (N задавать через define). Для отладки матрицу можно создать прямо в программном коде, однако конечный вариант программы должен запрашивать элементы матрицы у пользователя. Исходная матрица выводится на экран для наглядности.


Задача:

Найти сумму элементов строки с минимальным номером, содержащей максимальный элемент матрицы.
PM MAIL   Вверх
ferz721
Дата 27.11.2011, 23:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 60
Регистрация: 14.1.2011

Репутация: нет
Всего: нет



Цитата

Найти сумму элементов строки с минимальным номером, содержащей максимальный элемент матрицы.

можно пример, как это понимать?
 
PM MAIL   Вверх
baldina
Дата 28.11.2011, 01:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3433
Регистрация: 5.12.2007
Где: Москва

Репутация: 15
Всего: 101



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

Код

#include <iostream>

int main () {
  int m[3][4] = { {1,2,3,4},
                          {3,2,5,1},
                          {5,2,1,2}};

  int max = m[0][0];
  int n=0;
  for (int i=0; i < 3; ++i)
    for (int j=0; j < 4; ++j)
      if (m[i][j] > max) {
         max = m[i][j];
         n = i;
      }

  int sum = 0;
  for (int j=0; j < 4; ++j)
     sum += m[n][j];

  std::cout << "max element " << max << " at row " << n << std::endl;
  std::cout << "sum of " << n << " row is " << sum << std::endl;
} 


для динамического массива, введенного с клавиатуры будет немного сложнее. и вычисления лучше вынести в отдельную функцию

Добавлено через 2 минуты и 44 секунды
для квадратной матрицы размера N изменения очевидные, справитесь))
PM MAIL   Вверх
zayats36
Дата 28.11.2011, 11:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 27.11.2011

Репутация: нет
Всего: нет



Спасибо! 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0401 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.