Quand vous avez un tableau de nombres en Perl , vous pouvez utiliser la fonction de carte pour créer un hachage qui se compose de chaque numéro unique et de son chef. Lorsque vous triez la table de hachage dans l'ordre décroissant , le premier élément est le mode . Cependant, comme il ne peut y avoir plus d'un mode , vous devez continuer à chercher des éléments suivants dans le hachage triés qui ont le même nombre que le premier élément . Instructions 1 Lancez un éditeur de texte ou bloc-notes, et de créer un nouveau script Perl. Par exemple, tapez la ligne suivante comme première ligne dans le fichier: Photos # /usr /bin /perl 2 Déclarez trois variables - le tableau pour lequel vous voulez ! calculer le mode , une table de hachage pour mémoriser le comptage de chaque numéro unique et une valeur scalaire de la numération de mode . Par exemple, tapez : my @ tableau; mon numéro de % ; my $ count ; 3 ajouter des numéros dans le tableau et définir le nombre de mode sur zéro, ce qui n'est pas un compte valide pour un mode. Par exemple, tapez : @ array = ( 7,1,5,9,11,7,3,3,5,7,9,3,8 ) ; $ count = 0; 4 créer une table de hachage dont les clés sont des numéros uniques dans le tableau et les valeurs sont le nombre d'occurrences de chaque clé en mappant la matrice à un hachage et d' incrémentation de la valeur chaque fois qu'une touche est ajouté à la table de hachage . Par exemple, tapez : carte { $ nombre {$ _} + +} @ array ; 5 Trier le hachage afin basé sur le nombre d'occurrences descendant afin que la clé avec le nombre d'occurrences , ou le mode, est le premier élément . Boucle à travers le hachage triés pour trouver le mode. Par exemple, tapez : for $ i ( sort { $ nombre {$ b } < => $ nombre {$ a }} touches de numéro % ) { 6 Imprimer le nombre de fois où la mode apparaît dans l'ensemble de données pour la première fois dans la boucle seulement . Par exemple, tapez : print " Le mode apparaît $ nombre { $ i} fois dans l'ensemble de données \\ n ". If $ count == 0; 7 capture le comte de la mode, la première fois que vous passez à travers la boucle en vérifiant si le nombre de mode est nulle. Par exemple, tapez : $ count = ( $ count == 0) ? $ nombre { $ i} : $ count ; 8 Imprimer la valeur de la mode pour chaque mode dans l'ensemble de données si le nombre est le même que le nombre de mode. Par exemple, tapez : impression " mode est $ i \\ n " if $ nombre {$ i} == $ count ;} 9 Enregistrez le script et attribuer une nom , comme " mode.pl. " Exécuter le script et assurez-vous que le résultat est correct . Par exemple , le script des étapes précédentes donne le résultat suivant : Le mode apparaît 3 fois dans la setmode données est 3mode est de 7
|