Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.75/20: Рейтинг темы: голосов - 20, средняя оценка - 4.75
student-novi4ok
4 / 4 / 3
Регистрация: 05.09.2011
Сообщений: 113
1

Найти количество локальных минимумов в матрице

22.11.2011, 19:36. Просмотров 3936. Ответов 37
Метки нет (Все метки)

Можете подсказать как найти кол-во локальных минимумов в двумерном массиве?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.11.2011, 19:36
Ответы с готовыми решениями:

Подсчитать количество локальных минимумов в матрице
Элемент матрицы называется локальным минимумом, если он строго меньше всех имеющихся у него...

Посчитать количество локальных минимумов в матрице
Элемент двохмерного масива называют локальным минимумом, если он имеет значение ,меньше значений...

Найти количество локальных минимумов в одномерном массиве
Составьте функцию, определяющую количество локальных минимумов для массива целых чисел. Элемент...

Найти количество локальных минимумов в двумерном массиве
Нужно найти локальные минимумы в двумерном массиве и посчитать их количество. Локальный минимум это...

Найти в массиве количество локальных минимумов значение которых кратно трем
У меня такая проблема у меня есть задача Задание 25 № 7319. Дан массив, содержащий 2014...

37
KuKu
1559 / 1037 / 93
Регистрация: 17.04.2009
Сообщений: 2,995
27.11.2011, 00:13 21
C++
1
    if (i!=0 && a[i-1][j]<a[i][j]) break;
Про эту строчку имел ввиду. Если i = 0, то условие ложно. a[i-1][j]<a[i][j] - истинность этого выражения не имеет уже значения. Вот я не уверен, будет ли программка его проверять. По идее не должна.
1
student-novi4ok
4 / 4 / 3
Регистрация: 05.09.2011
Сообщений: 113
27.11.2011, 00:17  [ТС] 22
Так тут проверяется сразу весь массив?_) просто не совсем понимаю условия
0
KuKu
1559 / 1037 / 93
Регистрация: 17.04.2009
Сообщений: 2,995
27.11.2011, 00:28 23
Ой, извиняюсь, break на continue замените. Да, весь массив.
1
student-novi4ok
4 / 4 / 3
Регистрация: 05.09.2011
Сообщений: 113
27.11.2011, 00:39  [ТС] 24
Я вам благодарен, но теперь появилась другая проблема) можете объяснить условия)
вот например, (i!=0 && mas[i-1][j]<mas[i][j]) и почему именно такие условия, просто не пойму что-то.

Добавлено через 1 минуту
чтобы быстрее, понять, не напомните continue - это чтобы допустим если выполнилось 1 условие обход всех послед?
0
KuKu
1559 / 1037 / 93
Регистрация: 17.04.2009
Сообщений: 2,995
27.11.2011, 00:42 25
Возьмем элемент в центре. Если слева от него есть элемент меньше, значит он не минимум => переходим к следующему элементу. Аналогично для справа, сверху, снизу. Условие i!=0 и ему подобные - это отсеивание проверки для элементов по краям. То есть, если элемент у левой стенки, значит слева от него элементов нет и проверять там не надо. Если все условия в итоге не выполнились(вокруг нет меньших элементов), то делается cnt++;
continue - досрочно закончить одну итерацию цикла.
1
student-novi4ok
4 / 4 / 3
Регистрация: 05.09.2011
Сообщений: 113
27.11.2011, 00:48  [ТС] 26
как я понял по первым словам, то проверка начинается с центра? Блин вообще не понимаю эти условия, так что-то понимаю, но видимо еще не созрел до такого)

Добавлено через 1 минуту
Цитата Сообщение от KuKu Посмотреть сообщение
Если слева от него есть элемент меньше, значит он не минимум => переходим к следующему элементу.
Где происходит сравнение ?=)
0
KuKu
1559 / 1037 / 93
Регистрация: 17.04.2009
Сообщений: 2,995
27.11.2011, 00:48 27
Это объяснение начинается с центра - порядок пробега тут не важен) Цикл бежит все от 0 до конца.
1
student-novi4ok
4 / 4 / 3
Регистрация: 05.09.2011
Сообщений: 113
27.11.2011, 00:49  [ТС] 28
Так а где числа-то сравниваются?)
0
KuKu
1559 / 1037 / 93
Регистрация: 17.04.2009
Сообщений: 2,995
27.11.2011, 00:51 29
Цитата Сообщение от student-novi4ok Посмотреть сообщение
Где происходит сравнение ?=)
Тут 4 сравнения. Есть хороший способ понять - игра называется "почувствуй себя компилятором". Нарисуйте на бумажке матрицу 3 на 3. И пробегитесь сами по циклу, все считая голове - тогда поймете.
1
student-novi4ok
4 / 4 / 3
Регистрация: 05.09.2011
Сообщений: 113
27.11.2011, 00:54  [ТС] 30
Я уже сижу считаю) понял что без этого не пойму никак)

Добавлено через 1 минуту
if (i!=0 && mas[i-1][j]<mas[i][j]) continue;
if (i!=nstr-1 && mas[i+1][j]<mas[i][j]) continue;
если выполняется первое условие, то проверка второго if и последующих уже проходить не будет? и сразу будет сnt++??
0
KuKu
1559 / 1037 / 93
Регистрация: 17.04.2009
Сообщений: 2,995
27.11.2011, 00:58 31
Брр... прочитайте, что такое continue.
1
student-novi4ok
4 / 4 / 3
Регистрация: 05.09.2011
Сообщений: 113
27.11.2011, 01:03  [ТС] 32
Все, понял. Огромное спасибо, пойду "поиграю в игру"=)

Добавлено через 3 минуты
Вы давно занимаетесь программированием?
0
KuKu
1559 / 1037 / 93
Регистрация: 17.04.2009
Сообщений: 2,995
27.11.2011, 01:06 33
Это сложно назвать занимаюсь) Тыкаюсь время от времени года 3.
1
student-novi4ok
4 / 4 / 3
Регистрация: 05.09.2011
Сообщений: 113
27.11.2011, 01:08  [ТС] 34
Ну постоянная работа с этим связана?
Просто думаю куда лучше пойти после окончания учебы, на программиста или html-верстальщика
Знакомые верстальщики есть и отзывы о работе слышал, вот решил и от программистов послушать отзывы о работе)
0
KuKu
1559 / 1037 / 93
Регистрация: 17.04.2009
Сообщений: 2,995
27.11.2011, 01:09 35
В армию Куда пойдете один фиг, везде одно и тоже. За пару месяцев втянетесь, а дальше суровые, унылые будни.
1
student-novi4ok
4 / 4 / 3
Регистрация: 05.09.2011
Сообщений: 113
27.11.2011, 01:12  [ТС] 36
Не, спасибо)
0
KuKu
1559 / 1037 / 93
Регистрация: 17.04.2009
Сообщений: 2,995
27.11.2011, 01:13 37
Та меня лучше не слушать, куда душа лежит)
1
student-novi4ok
4 / 4 / 3
Регистрация: 05.09.2011
Сообщений: 113
27.11.2011, 01:15  [ТС] 38
Не думал что у программистов унылые будни) Вот у сисадминов, да!)

Добавлено через 1 минуту
Да сам фиг знает, просто когда сажусь писать верстку, как-то руки сами пишут) а когда сажусь писать программку, то не всегда везет так скажем) понимаю но как-то не тот склад ума
0
27.11.2011, 01:15
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.11.2011, 01:15

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

Определение количества локальных минимумов в заданной матрице. Нахождение суммы модулей элементов
Здравствуйте! Прошу помощи в лабораторной работе. Задание: 1. Консольный ввод/вывод...

Подсчитать количество локальных минимумов
Элемент матрицы называется локальным минимумом, если он строго меньше всех имеющихся у него...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru