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

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

Войти
Регистрация
Восстановить пароль
 
barlog
2 / 2 / 0
Регистрация: 03.11.2009
Сообщений: 227
#1

Проверьте симметричность - C++

15.01.2011, 00:30. Просмотров 811. Ответов 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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
#include <vcl.h>
#pragma hdrstop
#include <iostream.h>
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
//---------------------------------------------------------------------------
 
#pragma argsused
 
const n=3;
 
 
 void  MyIn ( int M[][n])
{ int i , j , x , y  ;
  for(i=0 , y=wherey()+1 ; i<n ; i++ , y++ )
   for (j=0 , x=10 ; j<n ; j++ , x+=5 )
     { gotoxy(x,y) ;
       cin>>M[i][j] ;
 
 }
}
 
 
 void Simmetric( int M[][n] )
{ int k=0;
 
for ( int i = 0; i < n; i++ )
  for (int j=0  ; j<n ; j++  )
{ if ( !(M[i][j])==M[j][i])
 { k=1;
     }
  }
 
if(k==0) cout<<"Simm";
else
 cout<<"No_Simm";
 
}
 
 
 
 
int main()
{
 
int A[n][n] ;
 
 
  cout<<endl;
    cout<<endl;
    MyIn( A) ;
 
  cout<<endl;
      cout<<"   ";
  Simmetric( A ) ;
 
getch();
return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.01.2011, 00:30     Проверьте симметричность
Посмотрите здесь:

Симметричность массива - C++
задание такое: Задан массив из k символов. Определить, симметричен ли он, т. е. чита-ется ли он одинаково слева направо и справа налево....

Симметричность матрицы - C++
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;conio.h&gt; #include &lt;iomanip&gt; #include &quot;MyCrt.cpp&quot; using namespace std; int...

Симметричность матрицы - C++
Дана квадратная матрица А(N, N).Составьте программу, определяющую, является ли данная матрица симметричной или нет. Если матрица...

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

симметричность строки на С++ - C++
Описать рекурсивную функцию, проверяющую, является ли симметричной часть строки s, начинающаяся i-м и заканчивающаяся j-м ее эле-ментами. ...

Симметричность массива - C++
Никак не могу дорубить как сделать. подскажите плиз Дан массив из К символов. Определить симметричен ли он, читается ли он одинаково...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
M128K145
Эксперт С++
8284 / 3503 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
15.01.2011, 00:45     Проверьте симметричность #2
barlog, симметричность относительно чего?
Если относительно главной диагонали, как у вас, то тогда так:
C++
1
2
3
4
5
6
7
8
9
int i, j;
for(i = 1; i < n; ++i)
    for(j = 0; j < i; ++j)
        if(M[i][j] != M[j][i]) 
        {
            cout<<"No_Simm";
            return;
        }
cout<<"Simm";
barlog
2 / 2 / 0
Регистрация: 03.11.2009
Сообщений: 227
15.01.2011, 00:59  [ТС]     Проверьте симметричность #3
а не могли бы вы пояснить почему такое условие?...и зачем return?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.01.2011, 01:12     Проверьте симметричность
Еще ссылки по теме:

Проверка на симметричность слова - C++
void main() { char line; printf(&quot;vvedite stroku\n&quot;); scanf(&quot;%s&quot;,line); for (int i=strlen(line)-1,j=0; i!=strlen(line)/2; i--,j++)...

Проверка последовательности символов на симметричность - C++
Уважаемые пользователи, помогите пожалуйста. Необходимо реализовать структуру проверки последовательности символов на симметричность. ...

Проверка квадратной матрицы на симметричность - C++
Помогите сделать программу, вот мой код: #include &quot;stdafx.h&quot; #include &quot;stdio.h&quot; #include &quot;conio.h&quot; int main() {int A,i,j,B,n; ...

Проверка на симметричность через стек - C++
Дана строка чётной длины. Через стек проверить симметрична она или нет. Вот, написал. #include &quot;stdafx.h&quot; #include &lt;iostream&gt; ...

Проверить k строку массива N*M на симметричность - C++
Проверить k строку массива N*M на симметричность int begin=0,end=m; char polindrom=true; for(int i=begin;i&lt;end;i++){ ...

Проверка строки на симметричность через рекурсию - C++
Функция проверки должна иметь только 1 параметр, и быть рекурсивной Что не так, посмотрите пожалуйста( #include &lt;conio.h&gt; #include...


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

Или воспользуйтесь поиском по форуму:
M128K145
Эксперт С++
8284 / 3503 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
15.01.2011, 01:12     Проверьте симметричность #4
barlog, потому что достаточно двигаться только или выше или ниже нижней диагонали, при этом не учитывая элементы главной диагонали.
Ведь двигаясь ниже главной диагонали вы меняя местами координаты вы сравниваете соответствующие элементы выше главной диагонали.
При первом несоответствии элементов вы выводите сообщение о том, что матрица не симметрична и прерываете выполнение функции(return), потому как дальше проверять смысла нет.
Если все элементы совпали, т.е. матрица симметрична - выводим сообщение.
Yandex
Объявления
15.01.2011, 01:12     Проверьте симметричность
Ответ Создать тему
Опции темы

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