Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
kiorol
0 / 0 / 0
Регистрация: 16.10.2016
Сообщений: 21
1

Найти произведение элементов матрицы в строках не содержащих нулевых элементов

02.02.2018, 06:36. Просмотров 151. Ответов 9
Метки нет (Все метки)

Дана вещественная прямоугольная матрица. Определить:
Произведение элементов в тех строках, которые не содержат нулевых элементов.
Сумму элементов в тех столбцах, которые не содержат отрицательных элементов.
 Комментарий модератора 
П.5.16.Правил
Запрещено создавать темы с множеством вопросов во всех разделах, кроме разделов платных услуг. Один вопрос - одна тема.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.02.2018, 06:36
Ответы с готовыми решениями:

Найти произведение элементов заданной матрицы в строках, не содержащих отрицательных элементов
В заданной целочисленной прямоугольной матрице найти: произведение элементов...

Найти произведение элементов в строках матрицы не содержащих отрицательных элементов
Дана целочисленная квадратная матрица. Определить: произведение элементов в...

Определить произведение элементов матрицы в строках не содержащих отрицательных элементов
Определить произведение элементов в тех строках, которые не содержат...

Определить произведение элементов матрицы в строках не содержащих отрицательных элементов
Дана целочисленная квадратная матрица. Определить: произведение элементов в...

Найти произведение элементов в тех строках матрицы, которые не содержат отрицательных элементов
Здравствуйте, помогите написать: Дана целочисленная квадратная матрица....

9
Herji
290 / 202 / 173
Регистрация: 11.05.2016
Сообщений: 658
Завершенные тесты: 1
02.02.2018, 11:09 2
Цитата Сообщение от kiorol Посмотреть сообщение
Произведение элементов в тех строках, которые не содержат нулевых элементов.
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
#include <iostream>
 
int main()
{
    int n = 7;
    int m = 4;
 
    double **arr = new double*[n];
    for(int i=0; i<n; i++)
    {
        double mlt = 1;
        arr[i] = new double[m];
        for(int j=0; j<m; j++)
        {
            arr[i][j] = ((rand()%201 - 100)/double(rand()%17+1));
            mlt*=arr[i][j];
            std::cout.width(10);
            std::cout << arr[i][j] << " ";
        }
        if(mlt) std::cout << " mlt = " << mlt;
        std::cout << "\n";
    }
 
    system("pause");
    return 0;
}
0
Yetty
630 / 556 / 491
Регистрация: 18.12.2017
Сообщений: 2,309
03.02.2018, 03:54 3
Herji, при заполнении
Цитата Сообщение от Herji Посмотреть сообщение
arr[i][j] = ((rand()%201 - 100)/double(rand()%17+1));
не выдаётся 0 (у меня по крайней мере)
0
Herji
290 / 202 / 173
Регистрация: 11.05.2016
Сообщений: 658
Завершенные тесты: 1
03.02.2018, 10:18 4
Цитата Сообщение от Yetty Посмотреть сообщение
не выдаётся 0 (у меня по крайней мере)
Выдается, но редко (хотя это тут не так важно, заполнение ради заполнения и наглядности же).
Для большей частоты выпадения диапазон уменьшить можно, ~11 - 5~ , к примеру
0
Yetty
630 / 556 / 491
Регистрация: 18.12.2017
Сообщений: 2,309
03.02.2018, 16:15 5
Цитата Сообщение от Herji Посмотреть сообщение
Выдается, но редко
не совсем Вас понял насчёт "редко". У Вас при каждом запуске идёт заполнение не одинаковым набором элементов?
0
Herji
290 / 202 / 173
Регистрация: 11.05.2016
Сообщений: 658
Завершенные тесты: 1
04.02.2018, 04:23 6
Цитата Сообщение от Yetty Посмотреть сообщение
У Вас при каждом запуске идёт заполнение не одинаковым набором элементов?
Вы придираетесь к отсутствию srand?

Добавлено через 6 минут
Цитата Сообщение от Yetty Посмотреть сообщение
не совсем Вас понял насчёт "редко"
просто проанализируйте, когда оно выдаст ноль
0
Yetty
630 / 556 / 491
Регистрация: 18.12.2017
Сообщений: 2,309
04.02.2018, 05:41 7
Цитата Сообщение от Herji Посмотреть сообщение
просто проанализируйте, когда оно выдаст ноль
сложно сказать - пока не вижу объективных причин для выдачи нуля (а хотелось бы его видеть в тестовом примере).
0
Herji
290 / 202 / 173
Регистрация: 11.05.2016
Сообщений: 658
Завершенные тесты: 1
04.02.2018, 11:37 8
Цитата Сообщение от Yetty Посмотреть сообщение
пока не вижу объективных причин для выдачи нуля
На пальцах: rand()%201 не может выдать сто? Или ( 100 - 100 ) != 0? Или 0/(1~17) != 0?
0
Yetty
630 / 556 / 491
Регистрация: 18.12.2017
Сообщений: 2,309
04.02.2018, 15:06 9
Цитата Сообщение от Herji Посмотреть сообщение
rand()%201 не может выдать сто?
у меня не выдаёт (всё время выводит одинаковый набор чисел в котором 100 нет). у Вас как-то по-другому ?
0
Herji
290 / 202 / 173
Регистрация: 11.05.2016
Сообщений: 658
Завершенные тесты: 1
04.02.2018, 15:49 10
Цитата Сообщение от Yetty Посмотреть сообщение
всё время выводит одинаковый набор чисел
Он и не должен быть разным, srand не прописан.
Задача не про заполнение масива

Если очень хочется:
раз
Кликните здесь для просмотра всего текста
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
#include <iostream>
#include <ctime>
 
int main()
{
    srand(time(NULL));
 
    int n = 7;
    int m = 4;
 
    double **arr = new double*[n];
    for(int i=0; i<n; i++)
    {
        double mlt = 1;
        arr[i] = new double[m];
        for(int j=0; j<m; j++)
        {
            arr[i][j] = ((rand()%11 - 5)/double(rand()%5+1));
            mlt*=arr[i][j];
            std::cout.width(10);
            std::cout << arr[i][j] << " ";
        }
        if(mlt) std::cout << " mlt = " << mlt;
        std::cout << "\n";
    }
 
    system("pause");
    return 0;
}

два
Кликните здесь для просмотра всего текста
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
#include <iostream>
 
int main()
{
    const int n = 3;
    const int m = 3;
 
    double arr[n][m] = { { 1., 2., 3. }, { 0, 1., 1. }, { 1., 1., 1.} };
 
    for(int i=0; i<n; i++)
    {
        double mlt = 1;
        for(int j=0; j<m; j++)
        {
            mlt*=arr[i][j];
            std::cout.width(10);
            std::cout << arr[i][j] << " ";
        }
        if(mlt) std::cout << " mlt = " << mlt;
        std::cout << "\n";
    }
 
    system("pause");
    return 0;
}
0
04.02.2018, 15:49
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.02.2018, 15:49

Найти произведение элементов в тех строках матрицы, которые не содержат отрицательных элементов
дана целочисленная квадратная матрица.Определить: 1.произведение элементов в...

Найти произведение элементов в тех строках матрицы, которые не содержат отрицательных элементов
Есть целочисленная квадратная матрица, где размерность и элементы вводятся с...

Произведение элементов в строках, которые не содержат нулевых элементов
Задание: Реализуйте следующие задания своего варианта с использованием шаблона...


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

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

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