경기방식중에 "리그방식" 로직

· 16년 전 · 1884
소스 정리하다가 옛날에 축구관련 사이트 작업한게 있었는데 있길래 한번 올려봅니다.
작업당시에 기존 존재하는 소스가 있나 싶어서 찾아봤는데 없는거 같길래 만들었어요~

자주 쓰이는 경기방식중에는
1. 리그방식
2. 링크방식
3. 토너먼트방식
이렇게 존재하는데요~

아래 소스는 리그방식 생성소스입니다.
1개의 라운드 안에 중복된 팀이 경기가 잡히지 않게
기본 로직만 있는거라서 도움이 될지 모르겠네요..

<?
////////////////////////////////////////////
$jocnt = 4; // 조 갯수
$roundloopfcnt = 1; // 같은 라운드 반복 횟수:기본값1(국내프로축구에서 자주 쓰임)
$teamcnt = 12; // 조당 팀갯수
////////////////////////////////////////////
for($j=0; $j<$jocnt; $j++){
 // 1개 조내의 경기수(라운드 반복 제외)
 $if_jogamecnt = 0;
 for($i=1; $i<$teamcnt; $i++){
  $if_jogamecnt = $if_jogamecnt + $i;
 }
 // 팀별코드 부여
 for($i=0; $i<$teamcnt; $i++){
  $if_teamcode[$i] = $i+1;
 }
 // 1개 조내의 1개 라운내의 경기수
 $if_roundincnt = floor($teamcnt/2);
 // 라운드 수
 $if_roundcnt = ($if_jogamecnt / $if_roundincnt) * $roundloopfcnt;
 if(!($teamcnt%2)){ // 짝수
  $if_teamcode_0 = array_shift($if_teamcode);
  sort($if_teamcode);
 }else{
  $if_teamcode_temp = $if_teamcode;
  $temp1 = array_pop($if_teamcode);
  for($ti=1; $ti<=count($if_teamcode); $ti++){
   $if_teamcode_temp[$ti] = $if_teamcode[$ti-1];
  }
  $if_teamcode_temp[0] = $temp1;
  ksort($if_teamcode_temp);
  $if_teamcode = $if_teamcode_temp;
 }
 $if_teamcode2 = $if_teamcode;
 for($c=0; $c<$if_roundcnt; $c++){
  for($i=0; $i<$if_roundincnt; $i++){
   $if_gamecnt++;
   if(!($teamcnt%2)){
    if($i==0){
     $team1 = $if_teamcode_0;
     $team2 = $if_teamcode2[0];
    }else{
     $team1 = $if_teamcode2[$i];
     $team2 = $if_teamcode2[count($if_teamcode2)-($i)];
    }
   }else{
    $team1 = $if_teamcode2[$i+1];
    $team2 = $if_teamcode2[count($if_teamcode2)-($i+1)];
   }
   echo "No. ".$if_gamecnt." || ".($j+1)." 조 | ".($c+1)." 라운드 | ".$team1."팀 vs ".$team2."팀<br>";
  }
  $temp1 = array_pop($if_teamcode2);
  for($ti=1; $ti<=count($if_teamcode2); $ti++){
   $if_teamcode3[$ti] = $if_teamcode2[$ti-1];
  }
  $if_teamcode3[0] = $temp1;
  ksort($if_teamcode3);
  $if_teamcode2 = $if_teamcode3;
 }
}
?>
[이 게시물은 관리자님에 의해 2011-10-31 17:16:08 PHP & HTML에서 이동 됨]
|
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

태그 필터 (최대 3개) 전체 개발자 소스 기타 mysql 팁자료실 javascript php linux flash 정규표현식 jquery node.js mobile 웹서버 os 프로그램 강좌 썸네일 이미지관련 도로명주소 그누보드5 기획자 견적서 계약서 기획서 마케팅 제안서 seo 통계 서식 통계자료 퍼블리셔 html css 반응형 웹접근성 퍼블리싱 표준화 반응형웹 홈페이지기초 부트스트랩 angularjs 포럼 스크린리더 센스리더 개발자톡 개발자팁 퍼블리셔톡 퍼블리셔팁 기획자톡 기획자팁 프로그램강좌 퍼블리싱강좌
+
제목 글쓴이 날짜 조회
15년 전 조회 886
15년 전 조회 1,351
15년 전 조회 1,330
15년 전 조회 3,110
15년 전 조회 3,498
15년 전 조회 2,179
15년 전 조회 1,620
15년 전 조회 2,240
15년 전 조회 1,728
15년 전 조회 1,353
15년 전 조회 4,040
15년 전 조회 1,705
15년 전 조회 1,776
15년 전 조회 3,068
15년 전 조회 1,760
15년 전 조회 4,435
15년 전 조회 2,639
15년 전 조회 3,418
15년 전 조회 2,048
15년 전 조회 2,278
15년 전 조회 1,558
15년 전 조회 4,625
15년 전 조회 4,281
15년 전 조회 4,080
15년 전 조회 5,466
15년 전 조회 3,704
15년 전 조회 2,068
16년 전 조회 2,017
16년 전 조회 2,159
16년 전 조회 1,864
16년 전 조회 4,304
16년 전 조회 3,191
16년 전 조회 2,359
16년 전 조회 1,943
16년 전 조회 2,150
16년 전 조회 2,650
16년 전 조회 1,729
16년 전 조회 2,648
16년 전 조회 1,975
16년 전 조회 2,111
16년 전 조회 1,759
16년 전 조회 2,451
16년 전 조회 1,776
16년 전 조회 2,197
16년 전 조회 2,357
16년 전 조회 1,450
16년 전 조회 1,516
16년 전 조회 2,163
16년 전 조회 5,582
16년 전 조회 1,885
16년 전 조회 2,409
16년 전 조회 2,605
16년 전 조회 1,759
16년 전 조회 1,550
16년 전 조회 2,467
16년 전 조회 5,178
16년 전 조회 2,456
16년 전 조회 3,119
16년 전 조회 1,989
16년 전 조회 3,856
16년 전 조회 4,693
16년 전 조회 3,339
16년 전 조회 2,582
16년 전 조회 2,669
16년 전 조회 2,915
16년 전 조회 2,423
16년 전 조회 5,805
16년 전 조회 3,611
16년 전 조회 1,603
16년 전 조회 1,940
16년 전 조회 5,313
16년 전 조회 2,567
16년 전 조회 3,639
16년 전 조회 2,920
16년 전 조회 1,790
16년 전 조회 5,635
16년 전 조회 2,752
16년 전 조회 6,213
16년 전 조회 2,174
16년 전 조회 4,240
16년 전 조회 3,270
16년 전 조회 2,452
16년 전 조회 2,465
16년 전 조회 4,640
16년 전 조회 3,526
16년 전 조회 3,061
16년 전 조회 3,203
16년 전 조회 2,322
16년 전 조회 1,997
16년 전 조회 1,916
16년 전 조회 1,620
16년 전 조회 1,919
16년 전 조회 2,139
16년 전 조회 1,829
16년 전 조회 5,070
16년 전 조회 4,097
16년 전 조회 2,016
16년 전 조회 1,779
16년 전 조회 2,499
16년 전 조회 4,787