function echelonnerRev() { global $matA; global $matY; $k = count($matA) - 1; while (!isFinished($matA[0]) && $k != 0) { $matG = initG($matA); if ($matA[$k][$k] === 0) { for ($i = $k - 1; $i >= 0; $i--) { if ($matA[$i][$k] != 0) { $matA[$k] = $matA[$i]; $matY[$k] = $matY[$i]; break; } } } for ($i = $k - 1; $i >= 0; $i--) { $matG[$i][$k] = -round($matA[$i][$k] / $matA[$k][$k], 2); } $matA = multMatrices($matG, $matA); $matY = multMatrices($matG, $matY); $matA = roundMatrice($matA); $matY = roundMatrice($matY); /* echo printMatrice($matG, "matGRev".$k, "G".-$k); echo printMatrice($matA, "matARev".(-$k+1), "A".(-$k+1)); echo printMatrice($matY, "matYRev".(-$k+1), "Y".(-$k+1));*/ $k--; } }
* 2 => il match è finito ora * 3 => shootoff */ $finished = 0; /* * <r> stabilisce lo stato di lettura della riga. * Normalmente è zero però il suo valore diventa 1 se: * 1) il match è finito in una volee precedente all'attuale check. * 2) esiste nella request la var corrispondente e vale 1 * Questo mi serve per inizializzare la colonna read dello store. * */ $r = 0; //debug_svela($myRow); if ($myRow->matchMode == 1) { $finished = isFinished($myRow, $points4win, $max); } elseif ($myRow->tie1 == 2 || $myRow->tie2 == 2) { $finished = 1; } elseif (strlen(trim($myRow->arrowString1)) == $arrow4Match[$myRow->event] && strlen(trim($myRow->arrowString2)) == $arrow4Match[$myRow->event]) { if ($myRow->score1 != $myRow->score2 || ($myRow->tie1 == 1 || $myRow->tie2 == 1)) { //echo strlen($myRow->arrowString1)."-".strlen($myRow->arrowString2)."-".$stdArrowShot."-".strlen($myRow->tiebreak1)."-".strlen($myRow->tiebreak2)."-".$tieArrowShot."\n"; if (strlen(trim($myRow->arrowString1)) == $stdArrowShot && strlen(trim($myRow->arrowString2)) == $stdArrowShot && strlen(trim($myRow->tiebreak1)) == $tieArrowShot && strlen(trim($myRow->tiebreak2)) == $tieArrowShot) { $finished = 2; } else { $finished = 1; } } elseif ($myRow->score1 == $myRow->score2) { $finished = 3; } } if ($finished == 1) {