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

Вычислить произведение ненулевых элементов матрицы - C++

Восстановить пароль Регистрация
 
 
Alex_sandra
 Аватар для Alex_sandra
0 / 0 / 0
Регистрация: 04.02.2014
Сообщений: 15
04.02.2014, 20:18     Вычислить произведение ненулевых элементов матрицы #1
Вычислить произведение ненулевых элементов матрицы A(n,n), выделенном на рисунке темным цветом.
Миниатюры
Вычислить произведение ненулевых элементов матрицы  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.02.2014, 20:18     Вычислить произведение ненулевых элементов матрицы
Посмотрите здесь:

Вычислить произведение положительных элементов строки матрицы C++
Вычислить сумму и произведение нечетных элементов матрицы C++
Произведение ненулевых элементов C++
C++ Массивы. Организовать ввод матрицы, вычислить сумму ненулевых элементов, упорядочить элементы...
Матрицы: Написать функцию, которая находит произведение ненулевых элементов двух строк матрицы C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
virtuos553
 Аватар для virtuos553
48 / 3 / 1
Регистрация: 18.12.2012
Сообщений: 247
Записей в блоге: 1
04.02.2014, 21:44     Вычислить произведение ненулевых элементов матрицы #2
Alex_sandra, не совсем понятно, причем тут рисунок если матрица n на n?
ИЛи нужно вычислить произведение элементов матрицы стоящих на позиции темных квадратов?
Можно немножко по подробнее об условии
Alex_sandra
 Аватар для Alex_sandra
0 / 0 / 0
Регистрация: 04.02.2014
Сообщений: 15
04.02.2014, 22:00  [ТС]     Вычислить произведение ненулевых элементов матрицы #3
в задании больше ничего не написано, но я думаю надо вычислить произведение элементов матрицы стоящих на позиции темных квадратов, как вы сказали))
S_el
1906 / 1501 / 295
Регистрация: 15.12.2013
Сообщений: 5,912
04.02.2014, 22:16     Вычислить произведение ненулевых элементов матрицы #4
Что уже сделали?
Ev_Hyper
 Аватар для Ev_Hyper
1805 / 1626 / 435
Регистрация: 15.12.2013
Сообщений: 5,774
04.02.2014, 22:21     Вычислить произведение ненулевых элементов матрицы #5
Цитата Сообщение от virtuos553 Посмотреть сообщение
Alex_sandra, не совсем понятно, причем тут рисунок если матрица n на n?
из рисунка понятна общая формула для решения задачи:
произведение элементов сверху-снизу от главной-побочной диагонали.
virtuos553
 Аватар для virtuos553
48 / 3 / 1
Регистрация: 18.12.2012
Сообщений: 247
Записей в блоге: 1
04.02.2014, 22:23     Вычислить произведение ненулевых элементов матрицы #6
ну то есть если я правильно понял, надо искать произведение всех ненулевых элементов матрицы находящихся на позиции этих темных квадратов( сам алгоритм из этого рисунка понятен как они образуются), при этом массив динамический n*n , все правильно?
S_el
1906 / 1501 / 295
Регистрация: 15.12.2013
Сообщений: 5,912
04.02.2014, 22:24     Вычислить произведение ненулевых элементов матрицы #7
Верно
virtuos553
 Аватар для virtuos553
48 / 3 / 1
Регистрация: 18.12.2012
Сообщений: 247
Записей в блоге: 1
04.02.2014, 22:24     Вычислить произведение ненулевых элементов матрицы #8
тогда просто непонятно, как например по такому алгоритму считать для матрицы например 4 на 4
S_el
1906 / 1501 / 295
Регистрация: 15.12.2013
Сообщений: 5,912
04.02.2014, 22:27     Вычислить произведение ненулевых элементов матрицы #9
Цитата Сообщение от virtuos553 Посмотреть сообщение
тогда просто непонятно, как например по такому алгоритму считать для матрицы например 4 на 4
2 и 3 элементы нижней строки.
virtuos553
 Аватар для virtuos553
48 / 3 / 1
Регистрация: 18.12.2012
Сообщений: 247
Записей в блоге: 1
04.02.2014, 22:27     Вычислить произведение ненулевых элементов матрицы #10
S_el, если матрица 4 на 4 то как брать элементы?

C++
1
2
3
4
0 1 1 0
0 0 1 0
0 0 1 0
0 1 1 0
можете показать на примере единиц? я не совсем понимаю как для n четного делать
Ev_Hyper
 Аватар для Ev_Hyper
1805 / 1626 / 435
Регистрация: 15.12.2013
Сообщений: 5,774
04.02.2014, 22:28     Вычислить произведение ненулевых элементов матрицы #11
Цитата Сообщение от virtuos553 Посмотреть сообщение
тогда просто непонятно, как например по такому алгоритму считать для матрицы например 4 на 4
Например:
Код
1 2 3 4
5 6 7 8
9 9 9 9
9 9 9 9
тогда пр = 2*3*9*9
virtuos553
 Аватар для virtuos553
48 / 3 / 1
Регистрация: 18.12.2012
Сообщений: 247
Записей в блоге: 1
04.02.2014, 22:29     Вычислить произведение ненулевых элементов матрицы #12
а как же первая строка?
Ev_Hyper
 Аватар для Ev_Hyper
1805 / 1626 / 435
Регистрация: 15.12.2013
Сообщений: 5,774
04.02.2014, 22:29     Вычислить произведение ненулевых элементов матрицы #13
что с первой строкой?
virtuos553
 Аватар для virtuos553
48 / 3 / 1
Регистрация: 18.12.2012
Сообщений: 247
Записей в блоге: 1
04.02.2014, 22:30     Вычислить произведение ненулевых элементов матрицы #14
аааа, ну все тогда, то есть если n четное, мы посередине две строки не берем
Ev_Hyper
 Аватар для Ev_Hyper
1805 / 1626 / 435
Регистрация: 15.12.2013
Сообщений: 5,774
04.02.2014, 22:33     Вычислить произведение ненулевых элементов матрицы #15
Уф, как я уже писал:
произведение элементов сверху-снизу от главной-побочной диагонали.
gunslinger
случайный прохожий
 Аватар для gunslinger
1097 / 715 / 184
Регистрация: 20.07.2013
Сообщений: 1,969
04.02.2014, 23:54     Вычислить произведение ненулевых элементов матрицы #16
Builder (вроде работает и для четных n, но особо не тестировал):
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
  const n = 9;
  int i, j, mas[n][n];
  long double mult = 0;
  randomize();
  for (i = 0; i < n/2; i++)
    for (j = i+1; j < n-i-1; j++)
    {
      mas[i][j] = random(10);
      if (mas[i][j] != 0)
      {
        if (mult == 0)
          mult = 1;
        mult *= mas[i][j];
      }
    }
  for (i = n/2+1; i < n; i++)
    for (j = n-i; j < i; j++)
    {
      mas[i][j] = random(10);
      if (mas[i][j] != 0)
      {
        if (mult == 0)
          mult = 1;
        mult *= mas[i][j];
      }
    }
  ShowMessage(FloatToStr(mult));
Alex_sandra
 Аватар для Alex_sandra
0 / 0 / 0
Регистрация: 04.02.2014
Сообщений: 15
05.02.2014, 00:15  [ТС]     Вычислить произведение ненулевых элементов матрицы #17
Ребят, у меня ошибки:
Код
Ошибка	1	error C3861: randomize: идентификатор не найден
Ошибка	2	error C3861: random: идентификатор не найден
я так понимаю, нужно какую-то библиотеку подключить?? или нет??
gunslinger
случайный прохожий
 Аватар для gunslinger
1097 / 715 / 184
Регистрация: 20.07.2013
Сообщений: 1,969
05.02.2014, 01:38     Вычислить произведение ненулевых элементов матрицы #18
Для консоли вроде функция srand, библиотека math или подобное (если нужна). Но в этом вопросе я почти все подзабыл.
Ev_Hyper
 Аватар для Ev_Hyper
1805 / 1626 / 435
Регистрация: 15.12.2013
Сообщений: 5,774
05.02.2014, 09:28     Вычислить произведение ненулевых элементов матрицы #19
gunslinger, проще сразу сделать произведение равным 1, тогда не прийдется писать дополнительные условия сравнения.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.02.2014, 09:33     Вычислить произведение ненулевых элементов матрицы
Еще ссылки по теме:

C++ Вычислить произведение положительных элементов строки матрицы
C++ Найти произведение ненулевых элементов и количество нулевых элементов
C++ Вычислить произведение элементов квадратной матрицы

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

Или воспользуйтесь поиском по форуму:
Fear1911
6 / 3 / 7
Регистрация: 05.02.2014
Сообщений: 131
05.02.2014, 09:33     Вычислить произведение ненулевых элементов матрицы #20
ну как бы проверкой будет n/на любое число - если 0, то умножаем с предыдущем суммой P, иначе дальше.

я так понял все остальные белые - 0?

если нет,то задаем еще условие при отборе ниже главной диагонали И выше побочной, пока не дойдем до центра, оттуда реверс
Yandex
Объявления
05.02.2014, 09:33     Вычислить произведение ненулевых элементов матрицы
Ответ Создать тему
Опции темы

Текущее время: 22:47. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru