Форум программистов, компьютерный форум CyberForum.ru

Подсчитать количество локальных минимумов заданной матрицы размером 10 на 10 - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Задача на расчет площади по кривой http://www.cyberforum.ru/cpp-beginners/thread413254.html
Будьте добры, решите задачку на площадь объектно-ориентированным способом. За комментарии буду отдельно благодарен. Условие: Вычислить приближенно площадь одной арки синусоиды.
C++ Изменение порядка следования битов Помогите плз с программой Написать программу на с++, которая получает случайное целое типа int, выводит его двоичное представление на экран, выполняет следующее преобразование. Назовем триплетом группу из трех битов. В каждом третьем триплете, начиная с младшего, изменить порядок следования битов на обратный. http://www.cyberforum.ru/cpp-beginners/thread413253.html
C++ Работа со строками и файлами в языке С++
Вывести на экран самое длинное слово и определяет, сколько раз оно встретилось в тексте.
Дан текст из строчных латинских букв, за которыми следует точка. Напечатать все буквы, входящие в текст по одному разу, все согласные, которые входят C++
Помогите исправить код, чтобы программа верно работала Дан текст из строчных латинских букв, за которыми следует точка. Напечатать все буквы, входящие в текст по одному разу, все согласные, которые входят в каждое слово. //#include "stdafx.h" #include <string> #include <set> #include <iostream> #include <sstream> #include <vector>
C++ два класса с преобразованием. Помогите пожалуйста http://www.cyberforum.ru/cpp-beginners/thread413232.html
Определить два класс, строку с преобразование из char * в строку и обратно и Double с преобразованием из double и обратно, а также взаимное преобразование String и Double.
C++ Одномерный массив Помогите с написанием программы. Для одномерного массива длиной N 1. Найти среднее геометрическое всех элементов, значение которых больше 5 (x >5) 2. Посчитать среднее арифметическое произведений соседних элементов. подробнее

Показать сообщение отдельно
challengerr
43 / 36 / 2
Регистрация: 30.07.2008
Сообщений: 136
21.12.2011, 07:24     Подсчитать количество локальных минимумов заданной матрицы размером 10 на 10
Задача очень важная практически.
i - номер столбца
j - номер строки

Условия:
i>=0
j>=0
i<=10
j<=10
Элемент (i,j) в матрице расположен следующим образом:
...
(i-1, j-1) (i,j-1) (i+1, j-1)
(i-1,j) (i,j) (i+1,J)
(i-1, j+1) (i,j+1) (i+1, j+1)
...
Таким образом (i,j) надо сравнить с (i-1, j-1), (i,j-1), (i+1, j-1),(i-1,j),(i+1,J),(i-1, j+1), (i,j+1), (i+1, j+1) и если он строго меньше всех из этиз элементов значит (i,j) - локальный минимум
-----
Модуль это функция abs из библиотеки math.
Пусть элемент матрицы задан в следующей форме: (столбец, строка)
Тогда матрица при наложенных условиях имеет вид:
(0,0) (1,0) (2,0) ... (8,0) (9,0)
(0,1) (1,1) (2,1) ... (8,1) (9,1)
(0,2) (1,2) (2,2) ... (8,2) (9,2)
... ... ...
(0,9) (0,9) (0,9) ... (8,9) (9,9)
Побочная диагональ - диагональ с элементами (9,0) (8,1) ...(0,9)
Требуется подсчитать сумму модулей элементов, расположенных над побочной диагональю.
Проход в цикле по побочной диагонали:
i, j - счетчики
Первый элемент: i = 9, j = 0
Второй элемент: i = i-1 j = j+1
...
Последний элемент: i = i-9, j = j+9
Нужна сумма элементов над побочной диагональю
Это означает, что нужно найти сумму элементов, на которые наложены следующие условия:
элементы первой строки: i < 9, j = 0
элементы второй строки: i < i-1 j = j+1
...
элементы последней строки: i < i-9, j = j+9
На языке даннные условия будут реализованы следующим образом:

задана матрица a
...
C++
1
2
3
4
sum = 0 // начальная сумма элементов равна нулю
for (j=0,i=9; j<9 ; j++, i--) // проход по зафикисрованным строкам
for (k=0;k<i;k++) // проход по столбцам строки с условием наложенных условия
sum = sum + abs(a[k][j]);
...
 
Текущее время: 11:09. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru