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

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

23.11.2019, 12:53. Показов 5658. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Сформировать двумерный массив C размером N x 5
(N - количество строк, равное предпоследней цифре номера студенческого билета +2 5 - количество столбцов с помощью генератора случайных чисел и вывести элементы массива.
Вычислить сумму положительных элементов в каждой строке матрицы C .
Из полученных сумм составить одномерный массив D. Вывести элементы массива D
Вопросы:
1)Я делал эту задачу полностью через cout и т.д, надо сделать через printf.
Получается дошел до того, что вывел матрицу 10 на 5 и прописал суммирование строчки.
Как сделать чтобы вывести сумму каждой строчки и сделать одномерный массив из получившихся чисел?
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
#include <iostream>
#include <cstdlib> 
#include <ctime>
#include <stdlib.h> 
#include <iomanip>
 
const int m = 10;
const int n = 5;
    int random (int N) {return rand() %N; }
int main()
 
{
    srand(time(NULL));
    int a,b, s0,N;
    int arr[m][n];
    
    for (int i = 0; i < m; i++)
        for (int j = 0; j < n; j++)  
    {
        arr[i][j] = rand() %200 - 100 ;
    
        }   
    
        for (int i = 0; i < m; i++)
        for (int j = 0; j < n; j++)  
    {
        printf( "%5d \t \t \t ", arr[i][j]);
    
        }   
        
    
    for (int i = 0; i < m; i++)
    { 
            int summ = 0;
        for (int j = 0; j < n; j++)
        {
            if (arr[i][j] > 0)
            {
                s0 = summ+ arr[i][j]; 
            }
           printf ( "" , summ+arr[i][j]);   
          
        } 
 
    }
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.11.2019, 12:53
Ответы с готовыми решениями:

В каждой строке матрицы вычислить сумму положительных четных элементов
Помогите перевести в c++ , не работает в c++, не могу сам. #include &quot;stdafx.h&quot; #include...

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

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

Найти в каждой строке матрицы сумму положительных элементов
Практика, просто тупо не успеваю, выручайте) Составить программу, которая находит в каждой строке...

3
Модератор
Эксперт С++
13507 / 10757 / 6412
Регистрация: 18.12.2011
Сообщений: 28,714
23.11.2019, 13:03 2
Strelok-R, чем Вам не угодил образец
Образцы (шаблоны) программ для типовых задач
В нем, ведь, надо добавить всего одну строчку:
C++
1
2
3
4
5
6
7
8
9
void Process( int ** M,int *Sum, size_t n, size_t m ) {
    for ( size_t i = 0; i < n; ++i ) {
        Sum[i] = 0;
        for ( size_t j = 0; j < m; ++j ) {
            if(M[i][j]>0)                  //   вот эту !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
               Sum[i] += M[i][j];
        }
    }
}
0
0 / 0 / 0
Регистрация: 23.11.2019
Сообщений: 29
23.11.2019, 17:10  [ТС] 3
У меня в коде написано вроде бы это, просто я не знаю как сделать, чтобы он показал эти решения, а из этого вывести массив.

Добавлено через 3 часа 33 минуты
C++
1
2
3
4
5
6
7
8
9
10
11
12
   for (i=0; i<m; i++) 
   { 
        int summ = 0;
        for (j=0; j<n; j++)
        {
        if (arr[i][j] > 0);
        {
            summ = summ + arr[i][j];
        }
        }
        printf("   |%d\n", summ);
    }
Другой вопрос выходит
Почему этот цикл не может выполнить условие if
Т.е он мне полностью всю строчку складывает с отрицательными и положительными, а нужно только положительные
0
7437 / 5029 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
23.11.2019, 17:43 4
Лучший ответ Сообщение было отмечено Strelok-R как решение

Решение

уберите точку с запятой
if (arr[i][j] > 0);
и пишите компактнее
C++
1
if (arr[i][j] > 0) sum+=arr[i][j];
0
23.11.2019, 17:43
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.11.2019, 17:43
Помогаю со студенческими работами здесь

Определить и вывести на экран сумму положительных элементов в каждой строке матрицы
Задание: В прямоугольной матрице размером L*М, имеющей имя МАTR содержаться целые числа. L- число...

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

В каждой строке матрицы вычислить сумму элементов больших заданных значений
Данная матрица b i мaсив , y , ..., y . Построить массив x , x .. x , где x равна сумме трех...

Вычислить сумму положительных элементов в каждой строке матрицы
Сформировать двумерный массив C размером N x 5 (N – количество строк, равное предпоследней цифре...


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

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