1
0
This repository has been archived on 2023-11-30. You can view files and clone it, but cannot push or open issues or pull requests.
dtux__serveur-vote-lalis/methods/schulzeResults.php
2022-09-23 16:06:03 +02:00

92 lines
1.2 KiB
PHP

<?php
class schulze
{
public int $nvotant;
public int $ncandidats;
public array $nvotes;
public array $v = array(
array(5, 1, 3, 2, 4),
array(1, 5, 2, 4, 3),
array(5, 3, 2, 4, 1),
array(5, 1, 3, 2, 4),
array(5, 3, 2, 4, 1),
);
function matrix()
{
foreach($nvotes as $votes)
{
for ($i=1;$i<=$votes;$i++)
{
for ($j=1;$j<=$ncandidats;$j++)
{
void;
}
}
}
}
function test($v)
{
$w = array();
$i = 0;
$j = 0;
asort($v);
print_r($v);
for($i = 0;$i < count($v) - 1;$i++)
{
if ($i == 0)
{
$w[$j]['vote'] = $v[$i];
$w[$j]['n'] = 1;
$j += 1;
}
if ($v[$i] == $v[$i+1])
{
$w[$J]["n"] += 1;
}else
{
$w[$j++] = $v[$i+1];
}
}
print_r($w);
}
function result()
{
for ($i=1;$i<=$ncandidats;$i++)
{
for ($j=1;$j<=$ncandidats;$j++)
{
if ($d[$i][$j] > $d[$j][$i])
{
$p[$i][$j] = $d[$i][$j];
}else
{
$p[$i][$j] = 0;
}
}
}
for ($i=1;$i<=$ncandidats;$i++)
{
for ($j=1;$j<=$ncandidats;$j++)
{
for ($k=1;$k<=$ncandidats;$k++)
{
if ($j != $k)
{
$p[$j][$k] = max($p[$j][$k], min($p[$j][$i],$p[$i][$k]));
}
}
}
return $p;
}
}
}
?>