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

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

05.03.2020, 11:06. Просмотров 66. Ответов 2
Метки нет (Все метки)

Написать программу для работы с динамическим целочисленным двумерным массивом. Количество строк, столбцов и элементы массива вводятся с клавиатуры. Вывести массив на экран.

1. Определить произведение элементов в тех строках, которые не содержат отрицательных элементов.
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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
#include <iostream>
#include <clocale>
#include <cstdlib>
#include <ctime>
 
int ** Create( size_t n, size_t m ) {     // Создание матрицы
    int ** M = new int * [n];
    for ( size_t i = 0; i < n; ++i ) {
        M[i] = new int [m];
    }
    return M;
}
 
void Free( int ** M, size_t n ) {    // Удаление матриц
    for ( size_t i = 0; i < n; ++i ) {
        delete [] M[i];
    }
    delete [] M;
}
 
void Input( int ** M, size_t n, size_t m ) {  //  ввод матрицы
    for ( size_t i = 0; i < n; ++i ) {
        for ( size_t j = 0; j < m; ++j ) {
            std::cout << "M[" << i << "][" << j << "] = ";
            std::cin >> M[i][j];
        }
    }
}
 
void FillRandomNumbers(int **matrix, const size_t rows, const size_t columns)   // заполнениы случайными числами
{
    srand((unsigned int)time(0));           // инициализируем ПГСЧ
 
    for (size_t row=0; row < rows; row++)
        for (size_t column=0; column < columns; column++)
            matrix[row][column] = rand() % 100;            // присваиваем СЧ
}
 
void Print( int ** M, size_t n, size_t m ) {       // Печать матриц
    for ( size_t i = 0; i < n; ++i ) {
        for ( size_t j = 0; j < m; ++j ) {
            std::cout<<M[i][j]<<' ';
        }
        std::cout<<std::endl;
    }
}
 
// сюда вставить все дополнительные функции
 
int main()
{
  
    size_t n, m;  //setlocale( LC_ALL, "Rus" ) 
 
    std::cout << "Введите количество строк матрицы: "; // вводим размерность матри
    std::cin >> n;
    std::cout << "Введите количество столбцов матрицы: ";
    std::cin >> m;
    int ** A = Create( n, m );   // выделяем память под матрицу, ввод матриц
                                //Input( A, n, m ); 
    FillRandomNumbers(A,n,m);  // заполнение случайными числами (вместо вво
                               // обработка матрицы
    int* S=new int[n];         // Вектор результата
    Process(A,S,n,m);
 
    for(size_t i=0;i<n;i++)     // вывод результат
        std::cout<< S[i] <<' ';
    std::cout<<std::endl;
 
    Print(A,n,m);  // Вывод матриц
 
    delete[] S;    // освобождаем память, выделенную под матрицу и вектор
    Free( A, n );
 
    return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.03.2020, 11:06
Ответы с готовыми решениями:

Определить произведение элементов в тех строках, которые не содержат отрицательных элементов
Помогите пожалуйста решить задачу &quot;Дана целочисленная квадратная матрица. Определить произведение...

Определить произведение элементов в тех строках, которые не содержат отрицательных элементов
доброго времени суток! нужна ваша помощь с заданием! дана целочисленная квадратная матрица. нужно...

Определить произведение элементов в тех строках, которые не содержат отрицательных элементов;
Добрый день, уважаемые форумчане! Не могу составить алгоритм с 2 частью задания. Помогите...

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

2
317 / 260 / 101
Регистрация: 23.04.2019
Сообщений: 1,196
Завершенные тесты: 2
05.03.2020, 17:22 2
Savitir,
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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
#include <iostream>
#include <clocale>
#include <cstdlib>
#include <ctime>
 
int** Create(size_t n, size_t m) {     // Создание матрицы
    int** M = new int* [n];
    for (size_t i = 0; i < n; ++i) {
        M[i] = new int[m];
    }
    return M;
}
 
void Free(int** M, size_t n) {    // Удаление матриц
    for (size_t i = 0; i < n; ++i) {
        delete[] M[i];
    }
    delete[] M;
}
 
void Input(int** M, size_t n, size_t m) {  //  ввод матрицы
    for (size_t i = 0; i < n; ++i) {
        for (size_t j = 0; j < m; ++j) {
            std::cout << "M[" << i << "][" << j << "] = ";
            std::cin >> M[i][j];
        }
    }
}
 
void FillRandomNumbers(int** matrix, const size_t rows, const size_t columns)   // заполнениы случайными числами
{
    srand((unsigned int)time(0));           // инициализируем ПГСЧ
 
    for (size_t row = 0; row < rows; row++)
        for (size_t column = 0; column < columns; column++)
            matrix[row][column] = rand() % 100;            // присваиваем СЧ
}
 
void Print(int** M, size_t n, size_t m) {       // Печать матриц
    for (size_t i = 0; i < n; ++i) {
        for (size_t j = 0; j < m; ++j) {
            std::cout << M[i][j] << ' ';
        }
        std::cout << std::endl;
    }
}
 
void Process(int** A, int* S, size_t n, size_t m)
{
    for (size_t i = 0; i < n; i++)
    {
        bool isHas = false;
        for (size_t j = 0; j < m; j++)
        {
            if (A[i][j] < 0)
            {
                isHas = true;
            }
        }
        if (!isHas)
        {
            S[i] = 1;
            for (size_t j = 0; j < m; j++)
            {
                S[i] *= A[i][j];
            }
        }
    }
}// сюда вставить все дополнительные функции
 
int main()
{
 
    size_t n, m;  //setlocale( LC_ALL, "Rus" ) 
 
    std::cout << "Введите количество строк матрицы: "; // вводим размерность матри
    std::cin >> n;
    std::cout << "Введите количество столбцов матрицы: ";
    std::cin >> m;
    int** A = Create(n, m);   // выделяем память под матрицу, ввод матриц
                                //Input( A, n, m ); 
    FillRandomNumbers(A, n, m);  // заполнение случайными числами (вместо вво
                               // обработка матрицы
    int* S = new int[n];         // Вектор результата
    Process(A, S, n, m);
 
    for (size_t i = 0; i < n; i++)     // вывод результат
        std::cout << S[i] << ' ';
    std::cout << std::endl;
 
    Print(A, n, m);  // Вывод матриц
 
    delete[] S;    // освобождаем память, выделенную под матрицу и вектор
    Free(A, n);
 
    return 0;
}
1
1986 / 1587 / 487
Регистрация: 31.05.2009
Сообщений: 2,968
05.03.2020, 19:20 3
Цитата Сообщение от AndryS1 Посмотреть сообщение
C++
1
2
3
4
if (A[i][j] < 0) 
{
    isHas = true;
}
Классика
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.03.2020, 19:20

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

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

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

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

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


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

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

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