Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 17.11.2020
Сообщений: 169
1

Рекурсия: найти произведение отрицательных элементов каждого столбца матрицы

27.12.2020, 16:34. Показов 732. Ответов 7
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
нужно найти произведение отрицательных чисел каждого столбца через рекурсию
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.12.2020, 16:34
Ответы с готовыми решениями:

Найти произведение отрицательных элементов каждого столбца матрицы и записать их в одномерный массив
Дана матрица H . Найти произведение отрицательных элементов каждого столбца матрицы и записать их в...

Вычислить произведение отрицательных четных элементов каждого столбца матрицы
Для произвольной матрицы A (N,M) сформулировать одномерный массив B, каждый элемент которого с...

Функции: найти произведение элементов каждого столбца матрицы
с использованием подпрограммы найти произведение элементов каждого столбца матрицы А (3,5)...

Для каждого столбца матрицы найти произведение его элементов
Дана матрица размера M×N. Для каждого столбца матрицы найти произведение его элементов.

7
0 / 0 / 0
Регистрация: 17.11.2020
Сообщений: 169
28.12.2020, 16:01  [ТС] 2
Что никто не знает?

Добавлено через 5 часов 15 минут
????
0
2831 / 2336 / 707
Регистрация: 29.06.2020
Сообщений: 8,638
29.12.2020, 02:23 3
Цитата Сообщение от NerouN29 Посмотреть сообщение
через рекурсию
накой тут рекурсия ???

Цитата Сообщение от NerouN29 Посмотреть сообщение
Что никто не знает?
никто не хочет писать бессмысленное задание
0
0 / 0 / 0
Регистрация: 17.11.2020
Сообщений: 169
29.12.2020, 21:35  [ТС] 4
SmallEvil, у меня задание стоит написать через рекурсию
0
2831 / 2336 / 707
Регистрация: 29.06.2020
Сообщений: 8,638
30.12.2020, 01:03 5
Цитата Сообщение от NerouN29 Посмотреть сообщение
у меня задание стоит написать через рекурсию
рекурсию переводят в циклы для эффективности, а Вам дали задание написать плохой и неестественный код .

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
42
43
44
45
46
47
48
49
50
51
52
#include <iostream>
#include <ctime>
using namespace std;
 
static int rrand(int range_min, int range_max)
{   return rand() % (range_max - range_min + 1) + range_min;
}
 
// умножение элементов стобца
long int multi_negative_col(int ** arr, size_t rows, size_t cols, size_t column, size_t row = 0)
{
    if (row < rows)
    {
     if (arr[row][column] < 0)
        return arr[row][column] * multi_negative_col(arr, rows, cols, column, row + 1) ;
     else
         return multi_negative_col(arr, rows, cols, column, row + 1);
    }
    return 1;
};
 
long int foo(int **arr, size_t rows, size_t cols, size_t column = 0)
{
   if (column < cols)
       return multi_negative_col(arr, rows, cols, column) * foo(arr, rows, cols, column + 1);
   return 1;
};
 
 
int main()
{
    srand((int)time(0));
    const size_t M = 2, N = 2;
    int **arr = new int* [M];
    for (size_t i=0; i<M; ++i)
        arr[i] = new int[N];
 
    for (size_t i = 0; i < M; i++) {
        for (size_t j = 0; j < N; j++) {
            arr[i][j] = rrand(-5, 5);
            cout<<arr[i][j]<<'\t';
        }
        cout<<endl;
    }
 
    cout <<endl<< foo(arr, M, N);
 
    for (size_t i = 0; i < M; ++i)
        delete [] arr[i];
    delete [] arr;
 
}
Добавлено через 6 минут
и вопрос к знатокам :
Как выловить ситуацию при отсутствии отрицательных элементов ?

P.S. в цикле для меня это как то попроще .
1
0 / 0 / 0
Регистрация: 17.11.2020
Сообщений: 169
30.12.2020, 15:25  [ТС] 6
SmallEvil, у вас походу не каждого столбца считает, а всех отрицательных елементов
0
2831 / 2336 / 707
Регистрация: 29.06.2020
Сообщений: 8,638
03.01.2021, 15:10 7
в "каждом" столбце ,произведение отрицательных элементов, = всех отрицательных элементов, лол.
Определитесь чего вы хотите.

Добавлено через 1 минуту
multi_negative_col подсчитывает произведение как раз для столбца
ТЕМА ОФФ
0
0 / 0 / 0
Регистрация: 17.11.2020
Сообщений: 169
03.01.2021, 17:32  [ТС] 8
SmallEvil, я имел виду что считает не всех элементов столбца, а вообще всех всех элементов
0
03.01.2021, 17:32
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.01.2021, 17:32
Помогаю со студенческими работами здесь

Для каждого столбца матрицы найти произведение его элементов.
Дана матрица размера M × N. Для каждого столбца матрицы найти произведение его элементов. ...

Для каждого столбца матрицы найти произведение его элементов
помогите пожалуйста с решение на С++, я не программист и на него не учусь, не знаю как решать!...

Найти сумму нечетных элементов 3 столбца и произведение отрицательных кратных 3 элементов 2-ой строки матрицы
Найти сумму нечетных элементов 3-го столбца и произведение отрицательных кратных 3 элементов 2-ой...

Вычислить произведение элементов каждого столбца матрицы, и найти среди них наименьшее
Дан двумерный массив А который состоит из m и строк n столбцов. Составить программу, которая...

Найти произведение наименьших элементов каждого столбца матрицы и поменять местами 1-й и 3-й столбцы
Посмотрите пожалуйста, почему у меня в 3 столбце минимальный элемент неправильно находит . Вот...

С использованием указателей найти произведение наибольших элементов каждого столбца матрицы и их координаты
Нужно использовать указатели .Как? Найти произведение наибольших элементов каждого столбца...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru