2012-05-19 4 views
0

나는 텍스트 파일의 cayley 테이블에 ID, 연관성, 역함수 및 아벨 특성이 있는지 식별해야하는 프로젝트를 진행 중입니다. 현재 ID 함수를 작업하고 있습니다. 나는 두 개의 중첩 된 for 루프를 사용하여 테이블의 행과 열을 순환해야한다고 생각합니다. 나는 올바른 방향으로 나를 밀어 붙일지도 모르는 것을 발견 할 수 없으며, 어떤 도움을 주시면 감사하겠습니다. 고마워요 제시카Cayley 테이블의 ID 속성

업데이트를 추가하고 싶습니다. 이것은 내가 작업을 계속할 수있는 경우에 대비하여 게시 한 것입니다. 많은 감사합니다.

group_el Group::getIdentity() 
{ 
for (int i=0; i<order; i++) 
    { 
    bool identIsi = true; 
    for (int j=0; j<order; j++) 
     { 
     if ((op(i,j)==i) && (op(j,i)==i)) //if i*j =i same as j*i = i then i is identity 
      { 
      return i; 
      } 
     else 
      { 
      identIsi = false; 
      } 
     } 
    } 

return NO_IDENTITY; }

+0

먼저 관련 코드를 게시 할 수 있습니까? 배경 정보없이 어떤 종류의 대답을 기대 하시는지 정확하게 알 수는 없습니다. – Blender

+0

@Blender OP가 코드가 없다고 말하는 것은 분명합니다. 속성 뒤에있는 이론에 도움이 필요합니다. –

+0

죄송합니다. 아직 코드를 시작하지 않았습니다. 나는 테이블의 정체성 요소가 테이블의 다른 요소를 변경하지 않고 남겨 둘 것임을 이해합니다. 곱셈에서 1을 곱한 값은 모두 동일합니다 ... 손으로 그려보고 일부 擬似 コード을 얻으 려 시도합니다. 감사합니다. 감사합니다. 어쨌든 –

답변

1

C++은 작업하기 가장 쉬운 언어는 아니지만 실행 가능할 것입니다. ,

나는 몇 년 전에 추상 대수학에 수업을했다 그리고 내가 무엇을 기억에서, 당신은 단지 일부 그룹은 A*BB*A을 수행해야합니다 비 교환 법칙이 성립하기 때문에 (가능한 모든 조합에 대한 표현을 쓸 필요가 어디 * 임의의 연산자입니다) 거기에서 작동합니다.

복잡성을 감소하기 위해,이 순서대로 할 거라고 : 신원 요소

  1. 스캔. 거기에 하나만 있어야하며 일단 계산을하면 계산의 나머지 부분이 조금 더 쉬워 질 것입니다.
  2. 신원 요소를 제공하기 위해 곱하는 두 요소를 검색하십시오. 그 두 가지 요소 (적절한 순서대로)는 반전됩니다.
  3. 그룹이 abelian인지 여부를 결정하는 것은 간단합니다. 아벨 그룹의 정의를 따르십시오.
+0

블렌더, 신원 기능을 완료 한 후에 다른 기능을 관리하기가 더 낫습니다. 감사합니다! –