Форум программистов, компьютерный форум CyberForum.ru

Дана целочисленная прямоугольная матрица. Определить сумму модулей - C++

Восстановить пароль Регистрация
 
Максим3181293
0 / 0 / 0
Регистрация: 10.02.2014
Сообщений: 27
11.02.2014, 14:54     Дана целочисленная прямоугольная матрица. Определить сумму модулей #1
Дана целочисленная прямоугольная матрица.
Определить: Сумму модулей элементов, расположенных ниже побочной диагонали.
Помогите пожалуйста, не понимаю как написать
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.02.2014, 14:54     Дана целочисленная прямоугольная матрица. Определить сумму модулей
Посмотрите здесь:

C++ Дана целочисленная прямоугольная матрица. Определить сумму элементов в тех строках, которые содержат хотя бы один отрицательный элемент.
C++ дана целочисленная прямоугольная матрица. Определить количество столбцов,содержащих хотя бы один нулевой элемент.
C++ Дана целочисленная прямоугольная матрица. Определить:
Дана целочисленная прямоугольная матрица. Определить количество строк, не содержащих ни одного нулевого элемента C++
C++ Дана целочисленная прямоугольная матрица.Определить номера строк и столбцов всех седловых точек матрицы
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ShadowFirst
54 / 47 / 1
Регистрация: 31.10.2013
Сообщений: 161
11.02.2014, 15:44     Дана целочисленная прямоугольная матрица. Определить сумму модулей #2
вам нужны числа ниже побочной диагонали, это делается так
C++
1
2
3
4
5
int sum = 0
for (int i = rowSize-1; i <=0; i--)
    for (int j = 0; j< collumSize; j++)  {
       sum += abs (massiv[i][j]);
}
Максим3181293
0 / 0 / 0
Регистрация: 10.02.2014
Сообщений: 27
11.02.2014, 15:46  [ТС]     Дана целочисленная прямоугольная матрица. Определить сумму модулей #3
#include <iostream>
#include <cstdlib>
using namespace std;
#define N 10

int main(){
int **mas = new int*[N];
int tmp[N];
int sum;
int sumcol[N];
cout << "Array : " << endl;
for(int i=0; i<N; i++)
mas[i] = new int [N];

for(int i = 0; i < N; i++){
for(int j = 0; j < N; j++){
mas[i][j] = rand()% 10 - 2;
cout<<mas[i][j]<<" ";
}
cout<<endl;
}
cout<<"a---------------------------------"<<endl;

матрица полностью выводится а вот дальше куда вставить ваш код и как вывести результат на экран вообще не понимаю

}
system("pause");
return 0;
}
ShadowFirst
54 / 47 / 1
Регистрация: 31.10.2013
Сообщений: 161
11.02.2014, 16:04     Дана целочисленная прямоугольная матрица. Определить сумму модулей #4
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
 #include <iostream>
#include <cstdlib>
#include <stdlib.h>
using namespace std;
#define N 10
 
int main(){
int **mas = new int*[N];
int tmp[N];
int sum;
int sumcol[N];
cout << "Array : " << endl;
for(int i=0; i<N; i++)
mas[i] = new int [N];
 
for(int i = 0; i < N; i++){
for(int j = 0; j < N; j++){
mas[i][j] = rand()% 10 - 2;
cout<<mas[i][j]<<" ";
}
cout<<endl;
}
cout<<"a---------------------------------"<<endl;
 
//А вот так
int sum = 0;
for (int i = N-1; i <=0; i--)
    for (int j = N-i+1; j< N; j++)  {
       sum += abs (massiv[i][j]);
}
 
}
system("pause");
return 0;
}
И кстати у вас ведь матрица вы говорили прямоугольная должна использоваться, а используете квадратную. При переделке в прямоугольную не перепутайте столбцы со строками.
Да и скати я не совсем понял должна ли побочная диагональ входить в эту сумму или нет.
И еще я чуть подправил свой код, немного ошибся вначале

Добавлено через 5 минут
И вывод осуществляется с помощью cout<< s;
Максим3181293
0 / 0 / 0
Регистрация: 10.02.2014
Сообщений: 27
11.02.2014, 16:37  [ТС]     Дана целочисленная прямоугольная матрица. Определить сумму модулей #5
ничего не понял. привставке кода:
1>------ Построение начато: проект: Лаба №20.2, Конфигурация: Debug Win32 ------
1>Построение начато 11.02.2014 15:07:07.
1>InitializeBuildStatus:
1> Обращение к "Debug\Лаба №20.2.unsuccessfulbuild".
1>ClCompile:
1> Лаба №20.cpp
1>d:\кпияп\лабы(готовые)\лаба №20.2\лаба №20.2\лаба №20.cpp(26): error C2086: int sum: переопределение
1> d:\кпияп\лабы(готовые)\лаба №20.2\лаба №20.2\лаба №20.cpp(10): см. объявление "sum"
1>d:\кпияп\лабы(готовые)\лаба №20.2\лаба №20.2\лаба №20.cpp(29): error C2065: massiv: необъявленный идентификатор
1>d:\кпияп\лабы(готовые)\лаба №20.2\лаба №20.2\лаба №20.cpp(33): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>d:\кпияп\лабы(готовые)\лаба №20.2\лаба №20.2\лаба №20.cpp(33): error C2365: system: переопределение; предыдущим определением было "функция"
1> c:\program files (x86)\microsoft visual studio 10.0\vc\include\stdlib.h(520): см. объявление "system"
1>d:\кпияп\лабы(готовые)\лаба №20.2\лаба №20.2\лаба №20.cpp(33): error C2440: инициализация: невозможно преобразовать "const char [6]" в "int"
1> Не существует контекста, в котором такое преобразование возможно
1>d:\кпияп\лабы(готовые)\лаба №20.2\лаба №20.2\лаба №20.cpp(34): error C2059: синтаксическая ошибка: return
1>d:\кпияп\лабы(готовые)\лаба №20.2\лаба №20.2\лаба №20.cpp(35): error C2059: синтаксическая ошибка: }
1>d:\кпияп\лабы(готовые)\лаба №20.2\лаба №20.2\лаба №20.cpp(35): error C2143: синтаксическая ошибка: отсутствие ";" перед "}"
1>d:\кпияп\лабы(готовые)\лаба №20.2\лаба №20.2\лаба №20.cpp(35): error C2059: синтаксическая ошибка: }
1>
1>СБОЙ построения.
1>
1>Затраченное время: 00:00:00.55
========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========

Добавлено через 29 минут
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
#include <cstdlib>
#include <stdlib.h>
using namespace std;
#define N 10
int main(){
int **mas = new int*[N];
int tmp[N];
int sum;
int sumcol[N];
cout << "Array : " << endl;
for(int i=0; i<N; i++)
mas[i] = new int [N];
for(int i = 0; i < N; i++){
for(int j = 0; j < N; j++){
mas[i][j] = rand()% 10 - 2;
cout<<mas[i][j]<<" ";
}
cout<<endl;
}
cout<<"a---------------------------------"<<endl;
//int sum = 0;
for (int i = N-1; i <=0; i--)
    for (int j = N-i+1; j< N; j++)  {
       sum += abs (mas[i][j]);
}
system("pause");
return 0;
}
Все работает а как вывести на экран итог который получился, а именно "Сумму модулей элементов, расположенных ниже побочной диагонали." - не знаю
Yandex
Объявления
11.02.2014, 16:37     Дана целочисленная прямоугольная матрица. Определить сумму модулей
Ответ Создать тему
Опции темы

Текущее время: 16:49. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru