首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >夹具生成器代码

夹具生成器代码
EN

Stack Overflow用户
提问于 2013-02-18 07:46:20
回答 2查看 1.6K关注 0票数 1

下面是我的代码:

代码语言:javascript
复制
$totalRounds = 1;
$teams = array('Team 1', 'Team 2', 'Team 3', 'Team 4', 'Team 5');
echo 'Total Teams: ' , $totalTeams = count($teams) , '<br/>';
$turns = $totalTeams;

for($round=1; $round<$totalRounds+1; $round++){
    echo 'Round: ' , $round , '<br/>';

    for($homeTeam=0; $homeTeam<$totalTeams-1; $homeTeam++){
        for($awayTeam=0; $awayTeam<$totalTeams; $awayTeam++){
            if($teams[$homeTeam] != $teams[$awayTeam]){
                echo $teams[$homeTeam] , ' v/s ' , $teams[$awayTeam] , '<br/>';
            }                        
        }
        unset($teams[$homeTeam]);
    }
    echo '<br/>';
}

我的预期输出是:

代码语言:javascript
复制
Team 1 v/s Team 2 <br/>
Team 1 v/s Team 3 <br/>
Team 1 v/s Team 4 <br/>
Team 1 v/s Team 5 <br/>
Team 2 v/s Team 3 <br/>
Team 2 v/s Team 4 <br/>
Team 2 v/s Team 5 <br/>
Team 3 v/s Team 4 <br/>
Team 3 v/s Team 5 <br/>
Team 4 v/s Team 5 <br/>

我的实际输出给出了未定义的索引错误

一旦解决了这个问题,我不知道如何分配主队和客队。例如:1队应该只有2场主场比赛,而不是4场。每支球队将进行2场主场比赛和2场客场比赛。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-02-18 07:49:49

你的代码正在销毁数组,例如:

代码语言:javascript
复制
first iteration: $home = 0; $away = 0
end of iteration: delete teams[0]

second iteration, $home = 1; $away = 0 - OOPS, teams[0] no longer exists

您应该将内部循环建立在外部循环的基础上,而不是在执行过程中取消设置数组,例如:

代码语言:javascript
复制
for($home = 0; ...) {
   for($away = $home + 1; ...) {
票数 1
EN

Stack Overflow用户

发布于 2013-02-18 07:50:42

您可以使用以下代码修复代码

代码语言:javascript
复制
$totalRounds = 1;
$teams = array('Team 1', 'Team 2', 'Team 3', 'Team 4', 'Team 5');
echo 'Total Teams: ' , $totalTeams = count($teams) , '<br/>';
$turns = $totalTeams;

for($round=1; $round<$totalRounds+1; $round++){
    echo 'Round: ' , $round , '<br/>';

    for($homeTeam = 0; $homeTeam < $totalTeams - 1; $homeTeam++) {
        for($awayTeam=$homeTeam + 1; $awayTeam < $totalTeams; $awayTeam++) {
            echo $teams[$homeTeam] , ' v/s ' , $teams[$awayTeam] , '<br/>';
        }
    }
    echo '<br/>';
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14927480

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档