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

Найти сумму элементов квадратной матрицы (не могу понять в чём ошибка) - C++

26.12.2015, 15:13. Просмотров 216. Ответов 18
Метки нет (Все метки)

Доброго времени суток уважаемые форумчане.
Пожалуйста подскажите в чем проблема, почему не работает?

C++ (Qt)
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
#include <iostream>
#include <conio.h> 
#include <windows.h>
#include <math.h>
using namespace std;
 
int main(int argc, char* argv[])
{
 
    int ab = 0;
    int summ = 0;
    const int m = 15;
    const int n = 15;
    int A[m][n];
    for (int u = 0; u<m; u++)
    {
        for (int k = 0; k<n; k++){
            A[u][k] = rand() % 99 + 1;
            cout << A[u][k] << "\t" << endl;
        }
    }
    for (int i = 0; i<m; i++)
    {
        for (int j = 0; j<n; i++)
        {
            if (j != i)
            {
                ab = A[i][j];
                summ = summ + ab;
            }
        }
    }
    cout << "Summa = " << ab << endl;
 
    _getch();
    return 0;
}

http://www.cyberforum.ru/cpp-beginners/thread423812.html
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.12.2015, 15:13
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Найти сумму элементов квадратной матрицы (не могу понять в чём ошибка) (C++):

Не могу понять в чём ошибка?
программа (работа с файлами) отрабатывает правильно, но в конце возникает...

База болезней, не могу понять в чём ошибка
Задание такое База болезней: название, симптомы, процедуры, перечень...

Найти сумму элементов квадратной матрицы X(n,n)
Найти сумму элементов квадратной матрицы X(n,n), находящихся по периметру...

Ошибка памяти при выполнении - не могу понять в чём дело
Добрый день. Есть следующий код: #include &lt;iostream&gt; using namespace std; ...

Найти сумму элементов главной диагонали квадратной матрицы
Помогите 1)Найти сумму элементов главной диагонали квадратной матрицы.

18
Kerry_Jr
Эксперт PHP
2210 / 2006 / 940
Регистрация: 14.05.2014
Сообщений: 5,869
Записей в блоге: 1
Завершенные тесты: 5
26.12.2015, 15:20 #2
Цитата Сообщение от Anadrion Посмотреть сообщение
C++
1
cout << "Summa = " << ab << endl;
C++
1
cout << "Summa = " << summ << endl;
1
Anadrion
1 / 1 / 0
Регистрация: 20.11.2012
Сообщений: 100
26.12.2015, 15:21  [ТС] #3
Пробовал, ошибка действительно пропадает, но сумму не выводит.
0
Melvil
48 / 47 / 26
Регистрация: 20.05.2015
Сообщений: 251
26.12.2015, 15:24 #4
Цитата Сообщение от Anadrion Посмотреть сообщение
for (int j = 0; j<n; i++)
Во втором вложенном цикле замените i++ на j++
1
Kerry_Jr
Эксперт PHP
2210 / 2006 / 940
Регистрация: 14.05.2014
Сообщений: 5,869
Записей в блоге: 1
Завершенные тесты: 5
26.12.2015, 15:25 #5
Цитата Сообщение от Anadrion Посмотреть сообщение
C++
1
for (int j = 0; j<n; i++)
C++
1
for (int j = 0; j < n; j++)
1
nvek
2 / 2 / 2
Регистрация: 18.09.2014
Сообщений: 87
26.12.2015, 15:25 #6
C++
1
2
3
4
5
6
7
8
9
10
for (int i = 0; i<m; i++)
    {
        for (int j = 0; j<n; i++)
        {
            if (j != i)
            {
                ab = A[i][j];
                summ = summ + ab;
            }
        }
там во внутреннем цикле разве надо инкрементировать итый элемент?
1
gru74ik
Модератор
Эксперт CЭксперт С++
4648 / 1962 / 293
Регистрация: 20.02.2013
Сообщений: 5,225
Записей в блоге: 23
26.12.2015, 15:28 #7
Лучший ответ Сообщение было отмечено Anadrion как решение

Решение

Anadrion, вот так работает:
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
#include <iostream>
#include <cstdlib>
#include <ctime>
 
int main()
{
 
    int ab = 0;
    int summ = 0;
    const int m = 5;
    const int n = 5;
    int A[m][n];
 
    srand(time(NULL));
    for (int i = 0; i < m; i++)
    {
        for (int j = 0; j < n; j++)
        {
            A[i][j] = rand() % 99 + 1;
            std::cout << A[i][j] << "\t";
        }
        std::cout << "\n";
    }
 
    for (int i = 0; i < m; i++)
    {
        for (int j = 0; j < n; j++)
        {
            if (j != i)
                ab = A[i][j];
 
            summ += ab;
        }
    }
    std::cout << "\nSumma = " << summ << "\n";
 
    return 0;
}
1
Anadrion
1 / 1 / 0
Регистрация: 20.11.2012
Сообщений: 100
26.12.2015, 15:39  [ТС] #8
Вроде да. Или я что-то не так сделал? Подскажите как надо.

Добавлено через 3 минуты
С ошибкой все равно, магия какая-то =)))
0
Anadrion
1 / 1 / 0
Регистрация: 20.11.2012
Сообщений: 100
26.12.2015, 15:43  [ТС] #9
Вот
0
Миниатюры
Найти сумму элементов квадратной матрицы (не могу понять в чём ошибка)  
gru74ik
Модератор
Эксперт CЭксперт С++
4648 / 1962 / 293
Регистрация: 20.02.2013
Сообщений: 5,225
Записей в блоге: 23
26.12.2015, 15:49 #10
Лучший ответ Сообщение было отмечено Anadrion как решение

Решение

Anadrion, у Вас на скриншоте Ваш вариант кода, а не мой. В Вашем целый ряд ошибок. Используйте мой вариант, он работает корректно.
1
Anadrion
1 / 1 / 0
Регистрация: 20.11.2012
Сообщений: 100
26.12.2015, 16:00  [ТС] #11
Спасибо ОГРОМНОЕ, жаль что бутылочку коньяка нельзя через монитор передать =) Все работает =)
0
Kerry_Jr
Эксперт PHP
2210 / 2006 / 940
Регистрация: 14.05.2014
Сообщений: 5,869
Записей в блоге: 1
Завершенные тесты: 5
26.12.2015, 16:24 #12
Цитата Сообщение от gru74ik Посмотреть сообщение
C++
1
2
3
if (j != i)
    ab = A[i][j];
summ += ab;
А когда j != i прибавляется предыдущий элемент?
0
gru74ik
Модератор
Эксперт CЭксперт С++
4648 / 1962 / 293
Регистрация: 20.02.2013
Сообщений: 5,225
Записей в блоге: 23
26.12.2015, 16:30 #13
Добавлено через 1 минуту
Цитата Сообщение от Anadrion Посмотреть сообщение
Спасибо ОГРОМНОЕ, жаль что бутылочку коньяка нельзя через монитор передать =)
Просто помогите другому форумчанину в вопросе, в котором Вы компетентны. Это будет лучшая благодарность.

Цитата Сообщение от Kerry_Jr Посмотреть сообщение
А когда j != i прибавляется предыдущий элемент?
Да уж, недоработочка. Ежели не в тягость, поправь пожалуйста. Мне надо бежать супругу встречать, а то там сумки тяжёлые, она одна под ними умрёт.
0
Kerry_Jr
Эксперт PHP
2210 / 2006 / 940
Регистрация: 14.05.2014
Сообщений: 5,869
Записей в блоге: 1
Завершенные тесты: 5
26.12.2015, 18:58 #14
Anadrion, в коде, который дал вам gru74ik сделайте небольшую корректировочку: это
C++
1
2
3
if (j != i)
    ab = A[i][j];
summ += ab;
замените на это
C++
1
2
3
4
5
if (j != i)
{
    ab = A[i][j];
    summ += ab;
}
Добавлено через 19 минут

Не по теме:

gru74ik, я смотрю, вас повысили

1
gru74ik
26.12.2015, 18:59
  #15

Не по теме:

Цитата Сообщение от Kerry_Jr Посмотреть сообщение
gru74ik, я смотрю, вас повысили
В смысле? Модератором сделали? Или опять какие-то сюрпризы, про которые я ещё не знаю?

0
Kerry_Jr
26.12.2015, 19:00
  #16

Не по теме:

Цитата Сообщение от gru74ik Посмотреть сообщение
В смысле?
ник цвета модераторов

0
gru74ik
Модератор
Эксперт CЭксперт С++
4648 / 1962 / 293
Регистрация: 20.02.2013
Сообщений: 5,225
Записей в блоге: 23
26.12.2015, 19:34 #17

Не по теме:

Цитата Сообщение от Kerry_Jr Посмотреть сообщение
ник цвета модераторов
OMG, там ещё и цвета меняются... И кто я теперь?



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

Не по теме:

Kerry_Jr, так воде как был фиолетовый, так и остался...

0
Kerry_Jr
26.12.2015, 22:20
  #18

Не по теме:

Цитата Сообщение от gru74ik Посмотреть сообщение
И кто я теперь?
модератор раздела "С++ для начинающих" Я, правда, не знаю, может уже давно модератор, да я просто внимание не обращал

0
gru74ik
26.12.2015, 22:41     Найти сумму элементов квадратной матрицы (не могу понять в чём ошибка)
  #19

Не по теме:

Цитата Сообщение от Kerry_Jr Посмотреть сообщение
модератор раздела "С++ для начинающих"
Ааа, ну это да. Я думал ещё раз меня куда-то назначили, а я не в курсе. Типа, опять "слона не заметил".

0
26.12.2015, 22:41
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.12.2015, 22:41
Привет! Вот еще темы с ответами:

Найти сумму элементов главной диагонали квадратной матрицы
Помогите решить 2 задачки : 1) Найти сумму элементов находящихся на главной...

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

Найти сумму элементов находящихся на главной диагонали квадратной матрицы
Помогите решить 2 задачки : 1) Найти сумму элементов находящихся на главной...

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


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

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

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