Shakan972
Messages postés43Date d'inscriptionsamedi 21 mai 2005StatutMembreDernière intervention17 avril 2015
-
17 avril 2015 à 16:42
Shakan972
Messages postés43Date d'inscriptionsamedi 21 mai 2005StatutMembreDernière intervention17 avril 2015
-
17 avril 2015 à 16:42
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
Pas trop mal, mais on peut faire mieux !
Voici en perl la fonction qui calcul le pgcd de n nombre :) :
sub pgcd { my ($a,$b,@rest)=@_; if($a==0 or $b==0) {return(-1)} #Si a ou b à 0, modulo impossible. A vous de voir comment vous gérez cette erreur. if ($a % $b==0) { if(defined(@rest)) { return pgcd($b,@rest); } else { return $b; } } else { if(defined(@rest)) { return pgcd($b, $a % $b, @rest); } else { return pgcd($b, $a % $b); } } }
J'ai écrit cette fonction par-ce que j'en ai eu besoin dans un prog qui prend en entrée X fréquences de signaux carrés, et retourne en sortie la valeur du plus grand temps échantillonnage permettant de recomposer un signal carré dont la fréquence peut varier parmi les X fréquences précédemment choisi.
Je ne m'attendais pas à devoir utiliser un jour le pgcd dans un cas pratique ^^
En espérant avoir été utile à quelqu'un,
Thomas D.
17 avril 2015 à 16:42
Voici en perl la fonction qui calcul le pgcd de n nombre :) :
J'ai écrit cette fonction par-ce que j'en ai eu besoin dans un prog qui prend en entrée X fréquences de signaux carrés, et retourne en sortie la valeur du plus grand temps échantillonnage permettant de recomposer un signal carré dont la fréquence peut varier parmi les X fréquences précédemment choisi.
Je ne m'attendais pas à devoir utiliser un jour le pgcd dans un cas pratique ^^
En espérant avoir été utile à quelqu'un,
Thomas D.