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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
niikiita
3 / 3 / 0
Регистрация: 29.05.2013
Сообщений: 226
#1

Определить, является ли целая квадратная матрица порядка n симметричной (относительно главной диагонали) - C++

14.11.2013, 10:58. Просмотров 637. Ответов 2
Метки нет (Все метки)

Помогите пожалуйста. В строке if(array1[i][j] == array1[j][i]) выдаёт ошибку идентификатор i (и j) не определен. Почему так происходит?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include "stdafx.h"
#include  <iostream>
#include<time.h> 
 
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{
    setlocale(LC_CTYPE, "Russian");
    int array1[3][3];
    srand(time(NULL));
    cout << "Введите элементы массива";
    for(int i = 0; i < 3; ++i)
    for(int j = 0; j < 3; ++j)
        array1[i][j] = rand()%5; 
            if(array1[i][j] == array1[j][i])
        cout << "Симметрична";
    else cout << "Не симметрична";
 
    cin.get();
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.11.2013, 10:58
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Определить, является ли целая квадратная матрица порядка n симметричной (относительно главной диагонали) (C++):

Определить, является ли целая квадратная матрица порядка n симметричной (относительно главной диагонали) - C++
Помогите пожалуйста, срочно нужно

Определить, является ли заданная целая квадратная матрица n- го порядка симметричной (относительно главной диагонали.) - C++
cout&lt;&lt;&quot;Hi:)&quot;; cout&lt;&lt;&quot;\nVvedite Matricu: &quot;; for (i=0;i&lt;=5;i++) for (j=0;j&lt;=5;j++) cin&gt;&gt;b; if (b == b) ...

Определить, является ли заданная квадратная матрица симметричной относительно главной диагонали - C++
Задание: Определить, является ли заданная квадратная матрица А(5,5) симметричной относительно главной диагонали. Написать два варианта...

Определить является ли заданная квадратная матрица симметричной относительно главной диагонали - C++
Разработать алгоритм и программу. Определить является ли заданная квадратная матрица A n-го порядка (2&lt;=n&lt;=10 – вводится пользователем)...

Определить, является ли данная квадратная матрица симметричной относительно главной диагонали. - C++
У меня аналогичная задача по курсовой, ничего не смыслю в С++ да и в программировании вообще, честно говоря, поэтому задачу решить сама...

Определить, является ли заданная квадратная матрица симметричной относительно главной диагонали. - C++
Не могу решить задачу на С++ Вот условия: Определить, является ли заданная квадратная матрица симметричной относительно главной...

2
Rivory
146 / 112 / 2
Регистрация: 15.01.2013
Сообщений: 266
14.11.2013, 11:26 #2
Потому что дурацкая привычка у людей не заключать в {...} то, что относится к циклам. Вот у вас строка if(array1[i][j] == array1[j][i]) уже не находится ни в 1ом for, ни во 2ом, поэтому он и не видит i и j, которые там определены.

И вообще там 2 прохода по матрице нужны. Один на заполнение, второй на проверку. Да и вывод, симметрична она или нет надо делать после того, как проверена вся матрица, а не каждый элемент по отдельности. Иначе в первом же проходе она выдаст "симметрично", т.к. при i=0;j=0 , как ни странно, arr[i][j]==arr[j][i]
0
niikiita
3 / 3 / 0
Регистрация: 29.05.2013
Сообщений: 226
18.11.2013, 20:47  [ТС] #3
Вот вроде исправил, но программа почему-то не правильно работает
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 "stdafx.h"
#include  <iostream>
 
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{
    setlocale(LC_CTYPE, "Russian");
    int proverka = 0;
    int array1[3][3];
    cout << "Введите элементы массива " << endl;
    for(int i = 0; i < 3; ++i)
    {
        for(int j = 0; j < 3; ++j)
 
        {
            cin >> array1[i][j];
            if(i != j)
            {
                if(array1[i][j] == array1[j][i])
                {
                    proverka = 1;
                    }   
                        else 
                    { 
                    proverka = 0;
                    break;
                }
            }
        }    
    }            
    if(proverka) 
        cout << "Симметрична";
            else
                cout << "Не симметрична";
    system ("pause");
                return 0;
}
Добавлено через 10 часов 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
36
37
38
39
40
41
42
#include "stdafx.h"
#include  <iostream>
#include <conio.h>
#include "MyCrt.cpp"
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{
    setlocale(LC_CTYPE, "Russian");
    int proverka = 0;
    int array1[3][3];
    do
    {
        ClrScr();
        cout << "Введите элементы массива " << endl;
        for(int i = 0; i < 3; ++i)
        {
            for(int j = 0; j < 3; ++j)
            {
                cin >> array1[i][j];
                if(i != j)
                {
                    if(array1[i][j] == array1[j][i])
                    {
                        proverka = 1;
                        }   
                            else 
                        { 
                        proverka = 0;
                    }
                }
            }    
        }            
        if(proverka = 1) 
            cout << "Симметрична\n";
                else
                    cout << "Не симметрична\n";
        cout << "Для завершения работы нажмите esc, для продолжения нажмите любую клавишу.\n";
    }
        while (_getch() != 27);
    cin.get();
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.11.2013, 20:47
Привет! Вот еще темы с ответами:

Определить, является ли заданная квадратная матрица симметричной относительно своей главной диагонали - C++
Определить, является ли данный квадратный массив симметричным относительно своей главной диагонали.

Определить, является ли заданная целая квадратная матрица n-го порядка симметричной - C++
Определить, является ли заданная целая квадратная матрица n-го порядка симметричной(относительно главной диагонали)? помогите пожалуйста...

Определить, является ли заданная целая квадратная матрица n-го порядка симметричной - C++
Парни напишите пажалуйста программу если не в тягость. Очень надо)) Вот условие: Определить, является ли заданная целая квадратная...

Определил, является ли заданная квадратная матрица симметричной относительно главной диагонали! - C++
Определить, является ли заданная квадратная матрица симметричной относительно главной диагонали! #include &lt;iostream&gt; #define MAX 100 ...


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

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

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