J'ai adapté ceci d'un exemple que j'ai trouvé sur le net ...Quel est le moyen le plus simple d'obtenir un ratio en PHP de plusieurs nombres?
function ratio($a, $b) {
$_a = $a;
$_b = $b;
while ($_b != 0) {
$remainder = $_a % $_b;
$_a = $_b;
$_b = $remainder;
}
$gcd = abs($_a);
return ($a/$gcd) . ':' . ($b/$gcd);
}
echo ratio(9, 3); // 3:1
Maintenant, je le veux utiliser func_get_args()
et retourner les rapports pour plusieurs numéros. Cela ressemble à un problème récursif, et la récursivité me fait peur (surtout quand mes solutions boucle infiniment)!
Comment est-ce que je modifierais ceci pour prendre autant de paramètres que je voulais?
Merci
déduis de c réponse: http://stackoverflow.com/questions/527860/calculate-a-ratio-in-c –
Que voulez-vous dire par «les ratios pour plusieurs nombres»? Quelque chose comme '2: 3: 5'? Ce que vous pourriez faire est d'abord de calculer les factorisations premières pour chaque élément de la liste des nombres. Le produit des facteurs premiers dans l'intersection est le plus grand dénominateur commun. Les ratios respectifs sont ensuite calculés comme dans votre exemple. –