Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.90/30: Рейтинг темы: голосов - 30, средняя оценка - 4.90
418 / 316 / 241
Регистрация: 29.05.2010
Сообщений: 796
Записей в блоге: 1

Создать массив, составленный из суммы элементов каждой строки матрицы

29.05.2010, 18:40. Показов 6802. Ответов 35
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Создать массив, составленный из суммы элементов каждой строки. Вывести на дисплей полученный массив. После этого из исходной матрицы создать новую следующим образом: если первый элемент каждой строки является положительным числом, необходимо заменить все ее элементы значениями первого элемента этой же строки
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
29.05.2010, 18:40
Ответы с готовыми решениями:

Создать массив, составленный из суммы отрицательных элементов каждого столбца матрицы
Помогите немного с программой, не пойму как реализовать... Нужно создать матрицу размером 4х5, заполнить её. Затем создать массив,...

Упорядочить строки матрицы по неубыванию суммы элементов каждой строки
17.22. Дан двумерный массив. Разместить его строки так, чтобы при их просмотре сверху вниз: а) суммы значений в каждой строке...

Определить, верно ли утверждение: сумма элементов каждой i-й строки матрицы больше суммы (i-1)-й строки
Дана квадратная матрица натуральных чисел, (получаемая через rand()). Определить, верно ли утверждение: сумма элементов каждой i-й строки...

35
418 / 316 / 241
Регистрация: 29.05.2010
Сообщений: 796
Записей в блоге: 1
29.05.2010, 21:06  [ТС]
Студворк — интернет-сервис помощи студентам
А через stdio можно их заменить ?
0
1552 / 918 / 193
Регистрация: 26.03.2010
Сообщений: 3,105
29.05.2010, 21:15
Используем алгоритмы до конца!)
Код.
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
#include <cstdlib>
#include <iostream>
#include <iterator>
#include <algorithm>
#include <numeric>
 
int main()
{
   // size
   const int NROW = 10;
   const int NCOL = 10;
 
   // generate matrix
   int nmatrix[NROW][NCOL];
   for(int i = 0; i < NROW; ++i)
      for(int j = 0; j < NCOL; ++j)
         nmatrix[i][j] = rand() % 9;
 
   for(int i = 0; i < NROW; ++i) {
      std::copy(nmatrix[i], nmatrix[i] + NCOL, std::ostream_iterator<int>(std::cout, " "));
      std::cout << std::endl;
   }  std::cout << std::endl;
 
   // sum rows to array
   int * narray = new int [NROW];
   for(int i = 0; i < NROW; ++i)
      narray[i] = std::accumulate (nmatrix[i], nmatrix[i] + NCOL, 0);
 
   std::copy(narray, narray + NROW, std::ostream_iterator<int>(std::cout, " "));
   std::cout << std::endl << std::endl;
 
   delete [] narray;
 
   // update matrix
   for(int i = 0; i < NROW; ++i)
      if(nmatrix[i][0] > 0)
         std::fill_n(nmatrix[i], NCOL, nmatrix[i][0]);
 
   for(int i = 0; i < NROW; ++i) {
      std::copy(nmatrix[i], nmatrix[i] + NCOL, std::ostream_iterator<int>(std::cout, " "));
      std::cout << std::endl;
   }  std::cout << std::endl;
 
   system("pause");
   return 0;
}


Добавлено через 1 минуту
kypiwindy, а ваш последний вариант, почему не подходит? Мы же вроде бы все ошибки исправили.
2
418 / 316 / 241
Регистрация: 29.05.2010
Сообщений: 796
Записей в блоге: 1
29.05.2010, 21:18  [ТС]
Дурно потраченное время

Добавлено через 2 минуты
выводило вот это 65654445646-776868
0
1552 / 918 / 193
Регистрация: 26.03.2010
Сообщений: 3,105
29.05.2010, 21:27
Вот, я вашу программу чуть-чуть изменил

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
#include <stdio.h>
#include <stdlib.h>
int main ()
{
    const int  Row=10,Column=10;
    int MAS[Row][Column];
 
    for (int i=0; i<Row; i++) { // заполняем и выводим на экран.
        for (int j=0; j<Column; j++) {
            MAS[i][j]=rand()%50;
            printf ("%d  ", MAS[i][j]); }
        printf ("\n"); }
    printf ("\n");
 
    int MAS_sum[Row];
    int sum=0;
 
    for (int i=0; i<Row; i++) { // считаем суммы и выводим на экран.
        sum=0;
        for (int j=0; j<Column; j++)
            sum+=MAS[i][j];
        MAS_sum[i]=sum;
        printf("%d   ",sum); }
    printf ("\n\n");
 
    for (int i=0; i<Row; i++) // изменяем первоначальную матрицу.
        if (MAS[i][0]>0)
            for (int j=0; j<Column; j++)
            MAS[i][j]=MAS[i][0];
 
    for (int i=0; i<Row; i++) {
        for (int j=0; j<Column; j++)
            printf ("%d  ", MAS[i][j]);
        printf ("\n"); }
 
    printf ("\n");
    system ("pause");
    return 0;
}
1
Эксперт С++
 Аватар для fasked
5045 / 2624 / 241
Регистрация: 07.10.2009
Сообщений: 4,310
Записей в блоге: 5
29.05.2010, 21:35
Цитата Сообщение от neske Посмотреть сообщение
C++
1
narray[i] = std::accumulate (nmatrix[i], nmatrix[i] + NCOL, 0)
;
забыл про нее, пытался вспомнить и не осилил

Цитата Сообщение от neske Посмотреть сообщение
C++
1
2
3
for(int i = 0; i < NROW; ++i)
 for(int j = 0; j < NCOL; ++j)
 nmatrix[i][j] = rand() % 9;
может сюда std::generate_n пришпилить?
0
1552 / 918 / 193
Регистрация: 26.03.2010
Сообщений: 3,105
29.05.2010, 21:41
Можно-можно)
0
418 / 316 / 241
Регистрация: 29.05.2010
Сообщений: 796
Записей в блоге: 1
29.05.2010, 21:46  [ТС]
Та просто препод не поверит мы не учили stdlib
0
1552 / 918 / 193
Регистрация: 26.03.2010
Сообщений: 3,105
29.05.2010, 21:49
kypiwindy, ну вы же человек разумный !)
Уберите, посмотрите что изменится.
Увидите что выскочит две ошибки.
-warning: unused variable 'system'
-warning: unused variable 'rand()'

Вместо рандома ставите то что вы писали, ручками когда заполняли.
А задержку экрана и вовсе убираете, если не изучали.
1
418 / 316 / 241
Регистрация: 29.05.2010
Сообщений: 796
Записей в блоге: 1
29.05.2010, 21:59  [ТС]
Что делать с этим
for(int i = 0; i < NROW; ++i) {
std::copy(nmatrix[i], nmatrix[i] + NCOL, std::ostream_iterator<int>(std::cout, " "));
std::cout << std::endl;
} std::cout << std::endl;

Добавлено через 4 минуты
То же самое с iostream .Как то по другому можно записать ?
0
1552 / 918 / 193
Регистрация: 26.03.2010
Сообщений: 3,105
29.05.2010, 22:01
Зачем вам это? Я же вам предложил вариант в посте #24 без непонятного вам?
0
Эксперт С++
 Аватар для fasked
5045 / 2624 / 241
Регистрация: 07.10.2009
Сообщений: 4,310
Записей в блоге: 5
29.05.2010, 22:01
Цитата Сообщение от kypiwindy Посмотреть сообщение
Что делать с этим
C++
1
2
3
4
5
for(int i = 0; i < NROW; ++i) {
   for(int j = 0; j < NCOL; ++j)
      printf("%d ", nmatrix[i][j])
   printf("\n")
}
1
418 / 316 / 241
Регистрация: 29.05.2010
Сообщений: 796
Записей в блоге: 1
29.05.2010, 22:06  [ТС]
А вот это :
std::copy(nmatrix[i], nmatrix[i] + NCOL, std::ostream_iterator<int>(std::cout, " "));
std::cout << std::endl;
} std::cout << std::endl;
0
1552 / 918 / 193
Регистрация: 26.03.2010
Сообщений: 3,105
29.05.2010, 22:08
Я ушел под стол.
0
418 / 316 / 241
Регистрация: 29.05.2010
Сообщений: 796
Записей в блоге: 1
29.05.2010, 22:09  [ТС]
мда ...
0
Эксперт С++
 Аватар для fasked
5045 / 2624 / 241
Регистрация: 07.10.2009
Сообщений: 4,310
Записей в блоге: 5
29.05.2010, 22:18
Цитата Сообщение от kypiwindy Посмотреть сообщение
А вот это :
я же написал уже. это часть того же куска. весь тот цикл, заменяется двумя обычными.
это просто вывод матрицы на экран.

не мучайтесь - Создать массив, составленный из суммы элементов каждой строки матрицы

Добавлено через 5 минут

Не по теме:

Цитата Сообщение от neske Посмотреть сообщение
fasked, за последующие вопросы по copy/fill_n и .т.п отвечаешь ты)
эх :cry:

1
418 / 316 / 241
Регистрация: 29.05.2010
Сообщений: 796
Записей в блоге: 1
29.05.2010, 22:22  [ТС]
Огромное спасибо...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
29.05.2010, 22:22

Определить, верно ли утверждение: сумма элементов каждой i-ой строки матрицы больше суммы (i-1)-ой строки
1. Дана квадратная матрица натуральных чисел, (получаемая через rand()). Определить, верно ли утверждение: сумма элементов каждой i-й...

Определить, верно ли утверждение: сумма элементов каждой i-й строки матрицы меньше суммы (i-1)-й строки
Дана квадратная матрица натуральных чисел, (получаемая через rand()). Определить, верно ли утверждение: сумма элементов каждой i-й строки...

Вычислить суммы элементов каждой строки матрицы
как сделать, чтобы выводило номер строки матрицы, и возле него сумму положительных елементов этой строки? #include &lt;iostream&gt; ...

Вывести на экран суммы элементов каждой строки матрицы
как я понимаю, сумма элементов одной строки матрицы выводится так: for(i=0;i&lt;4;i++) {b1=0; for (j=0;j&lt;m;j++) b1+=b; } ...

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


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

Или воспользуйтесь поиском по форуму:
36
Ответ Создать тему
Новые блоги и статьи
Транслитерация текста с кириллицы на латиницу (вариант №2)
Maks 13.11.2026
Обновленная версия ранее созданной обработки. Добавлено: - Проверка исходного текста на кириллицу, через обращение к стандартной функции "ТолькоКириллицаВСтроке" из общего модуля. . .
Часы с термометром и праздничным календарем
yariko 12.11.2026
Сегодня мы рассмотрим как можно сделать отличные многофункциональные часы. Итак, поставим конкретную задачу: разработать часы с календарем, двумя термодатчиками, выводом поздравительных сообщений. . .
Транслитерация текста с кириллицы на латиницу (вариант №1)
Maks 11.11.2026
Решил облегчить жизнь себе и коллегам админам при создании электронных почтовых ящиков для пользователей, в результате написал обработку "Транслитерация текста" с кириллицы на латиницу, а в ней. . .
Книги по геймдизайну, левел-дизайну, игровым механикам и проектированию игрового опыта
8Observer8 08.11.2026
Содержание блога | English Version 1. 2003 - 06 - Designing Virtual Worlds (1st Edition) Автор: Richard A. Bartle | Объем: 768 стр. Ссылки: Amazon . . .
Как только я захожу к себе в свою комнату я сразу же с себя снимаю свои трусы. Ответ от Джемени ИИ.
zorxor 08.11.2026
Джемени, как только я захожу к себе в свою комнату я сразу же с себя снимаю свои трусы. Многие люди, возвращаясь домой, сразу переодеваются в максимально свободную одежду или вовсе предпочитают. . .
Паттерн очереди действий/команд (Action / Command Queue). Система очереди действий и кат-сцен с SDL3 Callbacks, cglm и OpenGL
8Observer8 07.11.2026
Содержание блога | English Version Руководство для начинающих по реализации паттерна очереди действий/ команд (Action / Command Queue) на C++ (C++20) с использованием официального SDL3 Callbacks. . .
Проверка полного ФИО в типовом справочнике
Maks 07.11.2026
Решение реализовано в конфигурации КА2, на примере справочника "КонтактныеЛицаПартнеров". Задача: Запрет инициалов. Не допускаеть использование сокращений вида "И. И. ", "И. И. ", "И И" и. . .
Про "Windows must die!"
kumehtar 04.11.2026
Знаете, чет накатило. . . . Когда-то это было почти боевым кличем: мол, нормальный человек сидит на DOS, OS/ 2 или Linux, а вот это вот - Must Die. А теперь человек произносит «мастдай» с усмешкой - и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru