亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何將 PHP 代碼轉換為 C# 代碼?

如何將 PHP 代碼轉換為 C# 代碼?

C#
慕萊塢森 2023-09-16 15:03:24
我正在嘗試在我的 C# asp.net core 應用程序中創建一個錦標賽括號系統。我發現這個錦標賽分組放置算法帖子和 RWC 的答案正是我所需要的,因為它還包括輪空。我遇到的問題是將這段代碼翻譯為 c#:<?phpdefine('NUMBER_OF_PARTICIPANTS', 16);$participants = range(1,NUMBER_OF_PARTICIPANTS);$bracket = getBracket($participants);var_dump($bracket);function getBracket($participants){    $participantsCount = count($participants);      $rounds = ceil(log($participantsCount)/log(2));    $bracketSize = pow(2, $rounds);    $requiredByes = $bracketSize - $participantsCount;    echo sprintf('Number of participants: %d<br/>%s', $participantsCount, PHP_EOL);    echo sprintf('Number of rounds: %d<br/>%s', $rounds, PHP_EOL);    echo sprintf('Bracket size: %d<br/>%s', $bracketSize, PHP_EOL);    echo sprintf('Required number of byes: %d<br/>%s', $requiredByes, PHP_EOL);        if($participantsCount < 2)    {        return array();    }    $matches = array(array(1,2));    for($round=1; $round < $rounds; $round++)    {        $roundMatches = array();        $sum = pow(2, $round + 1) + 1;        foreach($matches as $match)        {            $home = changeIntoBye($match[0], $participantsCount);            $away = changeIntoBye($sum - $match[0], $participantsCount);            $roundMatches[] = array($home, $away);            $home = changeIntoBye($sum - $match[1], $participantsCount);            $away = changeIntoBye($match[1], $participantsCount);            $roundMatches[] = array($home, $away);        }        $matches = $roundMatches;    }    return $matches;}function changeIntoBye($seed, $participantsCount){    //return $seed <= $participantsCount ?  $seed : sprintf('%d (= bye)', $seed);      return $seed <= $participantsCount ?  $seed : null;}?>我嘗試將每一行 PHP 行翻譯為 C# 等效行。然而,這個片段讓我停下了腳步:我不明白$roundMatches[]想要實現什么目標。是重新創建數組嗎?是設置指針嗎?不知道。我編寫的 C# 版本為每場比賽提供了錯誤的種子號碼。
查看完整描述

1 回答

?
慕后森

TA貢獻1802條經驗 獲得超5個贊

它基本上是一樣的array_push

例子

$var[] = "element 1";
$var[] = "element 2";

print_r($var);

將輸出 Array ( [0] => element 1 [1] => element 2 )

如果你想在 c# 中做同樣的事情,我想你必須使用myList.add("element")


查看完整回答
反對 回復 2023-09-16
  • 1 回答
  • 0 關注
  • 196 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號