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

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

자주 쓰이는 경기방식중에는
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년 전 조회 752
15년 전 조회 1,220
15년 전 조회 1,195
15년 전 조회 2,989
15년 전 조회 3,343
15년 전 조회 2,010
15년 전 조회 1,476
15년 전 조회 2,100
15년 전 조회 1,597
15년 전 조회 1,218
15년 전 조회 3,903
15년 전 조회 1,542
15년 전 조회 1,637
15년 전 조회 2,904
15년 전 조회 1,604
15년 전 조회 4,297
15년 전 조회 2,497
15년 전 조회 3,273
15년 전 조회 1,911
15년 전 조회 2,138
15년 전 조회 1,427
15년 전 조회 4,498
15년 전 조회 4,135
15년 전 조회 3,940
15년 전 조회 5,326
15년 전 조회 3,568
15년 전 조회 1,929
15년 전 조회 1,874
15년 전 조회 2,024
15년 전 조회 1,723
16년 전 조회 4,151
16년 전 조회 3,042
16년 전 조회 2,209
16년 전 조회 1,801
16년 전 조회 2,013
16년 전 조회 2,507
16년 전 조회 1,588
16년 전 조회 2,520
16년 전 조회 1,846
16년 전 조회 1,955
16년 전 조회 1,612
16년 전 조회 2,315
16년 전 조회 1,628
16년 전 조회 2,043
16년 전 조회 2,237
16년 전 조회 1,316
16년 전 조회 1,379
16년 전 조회 2,026
16년 전 조회 5,455
16년 전 조회 1,748
16년 전 조회 2,270
16년 전 조회 2,462
16년 전 조회 1,624
16년 전 조회 1,414
16년 전 조회 2,338
16년 전 조회 5,054
16년 전 조회 2,318
16년 전 조회 2,986
16년 전 조회 1,854
16년 전 조회 3,713
16년 전 조회 4,563
16년 전 조회 3,210
16년 전 조회 2,466
16년 전 조회 2,552
16년 전 조회 2,785
16년 전 조회 2,290
16년 전 조회 5,664
16년 전 조회 3,483
16년 전 조회 1,469
16년 전 조회 1,818
16년 전 조회 5,183
16년 전 조회 2,425
16년 전 조회 3,513
16년 전 조회 2,790
16년 전 조회 1,671
16년 전 조회 5,499
16년 전 조회 2,607
16년 전 조회 6,092
16년 전 조회 2,050
16년 전 조회 4,125
16년 전 조회 3,147
16년 전 조회 2,325
16년 전 조회 2,347
16년 전 조회 4,515
16년 전 조회 3,405
16년 전 조회 2,941
16년 전 조회 3,081
16년 전 조회 2,199
16년 전 조회 1,883
16년 전 조회 1,806
16년 전 조회 1,513
16년 전 조회 1,793
16년 전 조회 2,011
16년 전 조회 1,711
16년 전 조회 4,958
16년 전 조회 3,961
16년 전 조회 1,903
16년 전 조회 1,654
16년 전 조회 2,394
16년 전 조회 4,665