Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.93/29: Рейтинг темы: голосов - 29, средняя оценка - 4.93
0 / 0 / 0
Регистрация: 06.11.2010
Сообщений: 6

Нахождение седловых точек матрицы

06.11.2010, 22:14. Показов 6055. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго вечера всем.Не могу справиться с заданием. Если кто-то сможет помочь сделать это задание, буду очень благодарен в помощи

Для матрицы 7х7 определить координаты всех ее седловых точек. Елемент матрицы седловая точка, если этот елемент самый большой в строке и одновременно - самым маленький в столбце.
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
06.11.2010, 22:14
Ответы с готовыми решениями:

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

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

Определить индексы всех седловых точек матрицы
Для заданной матризы размером (N x M)определить индексы всех ее седловых точек.

4
MiThEoN
 Аватар для VASSUV
466 / 323 / 42
Регистрация: 31.10.2009
Сообщений: 546
Записей в блоге: 2
07.11.2010, 01:25
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

C++
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
#include "stdafx.h"
#include <conio.h>
int _tmain(int argc, _TCHAR* argv[])
{
    int i,j,k,n=7;
    int a[7][7];
    for(i=0;i<n;i++){
        for(j=0;j<n;j++){
            scanf("%d",&a[i][j]);
        }
    }
    int min,max,indexmin;
    for(i=0;i<n;i++){
        max=a[i][0];
        for(j=1;j<n;j++){
            if(a[i][j]>=max){
                max=a[i][j];
            }
        }
        for(j=0;j<n;j++){
            if(a[i][j]==max){
                min=a[0][j];
                indexmin=0;
                for(k=0;k<n;k++){
                    if(a[k][j]<=min){
                                                                   if(indexmin==i)
                                                                                k=indexmin; 
                        indexmin=k;
                        min=a[k][j];
                    }
                }
                if(indexmin==i)
                {
                    printf("%d %d",i,j);
                    printf("\n");
                }
            }
        }
    }
    getch();
}
2
1 / 1 / 0
Регистрация: 25.11.2014
Сообщений: 12
05.04.2017, 16:19
Алгоритм для поиска седловых точек (работает с несколькими минимумами)

1. Найти минимум в каждой строке. (Нарпимер строка 5 7 2 2, минимум - 2)
2. Объявить новый массив точно так же, как был объявлен первый массив.
2. В отдельном цикле организовать проверку, в которой каждый элемент текущей строки сравнивать с минимумом этой строки (Например: 5==2, 7==2, 2==2, 2==2). Если условие сработало, то в новом массиве поставить 1, если нет - то 0 (Например: 5 7 2 2 => 0 0 1 1)

В итоге из массива
7 8 2 2
4 3 5 1
Должен получиться массив
0 0 1 1
0 0 0 1

То же самое проделать с максимум по столбикам (найти максимум каждого столбика, и потом проверять каждый элемент столбика с максимум столбика и заполнить еще одну матрицу 1 или 0)

Должно получиться
1 1 0 1
0 0 1 0

И потом сравнивать две бинарные матрицы: если единицы совпали, то это седловая точка.
В данном примере седловой точкой является элемент[0][3] - 2
1
 Аватар для FFPowerMan
2156 / 1236 / 508
Регистрация: 11.10.2018
Сообщений: 6,245
14.03.2019, 10:45
Цитата Сообщение от kickerb Посмотреть сообщение
Елемент матрицы седловая точка, если этот елемент самый большой в строке и одновременно - самым маленький в столбце.
- это по-определению неправильно. Вот определение:
"Седловой точкой называется элемент матрицы, который одновременно является минимальным элементом в соответствующей строке матрицы и максимальным элементом в соответствующем столбце матрицы."
Почему никто этого не заметил?
0
║XLR8║
 Аватар для outoftime
1212 / 909 / 270
Регистрация: 25.07.2009
Сообщений: 4,360
Записей в блоге: 5
14.03.2019, 13:11
Цитата Сообщение от FFPowerMan Посмотреть сообщение
Почему никто этого не заметил?
Потому что седловая точка это математическое понятие характиризующее смену прогиба плоскости по 2м осям. Какая разница плоскость слева идёт вниз а спереди вверх или наоборот?
https://ru.wikipedia.org/wiki/... 0%BA%D0%B0
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
14.03.2019, 13:11
Помогаю со студенческими работами здесь

Указать индексы седловых точек данной матрицы
Элемент матрицы называется седловой точкой, если он является наименьшим в сторке и наибольшим в столбце или, наоборот, наибольшим в...

Найти координаты всех седловых точек матрицы
Помогите плз написать прогу: Используя динамический массив. В целочисленной прямоугольной матрице A(mxn) найти: - номер первой из...

Найти индексы всех седловых точек матрицы
Элемент матрицы назовем седловой точкой, если он наименьший в своей строке и наибольший (одновременно) в своем столбце (или наоборот,...

Найдите количество седловых точек заданной матрицы
Задана матрица K, содержащая n строк и m столбцов. Седловой точкой этой матрицы назовем элемент, который одновременно является минимумом в...

Найти координаты всех седловых точек матрицы
В целочисленной прямоугольной матрице A(MxN) найти: - номер первой из строк, содержащей хотя бы один нуль; - координаты всех ее...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru