Problème affichage tableau de taille variable - Perl - Programmation
Marsh Posté le 28-10-2012 à 00:17:56
1 - Tu déclares ton tableau à chaque tour de la boucle
2 - Ce n'est pas comme ca qu'on concatène un élément dans un tableau
=> Soit tu déclares un tableau de taille fixe après avoir entré le nombre de cours, soit tu déclares un tableau dynamique et tu push() les éléments dedans.
3 - Les index d'un tableau en perl commencent à 0, et se terminent à nombre de cours - 1 du coup.
J'ai pas regardé tes algos de calcul de note.
Marsh Posté le 28-10-2012 à 12:18:32
Citation : Soit tu déclares un tableau de taille fixe après avoir entré le nombre de cours |
En Perl, il faudra que tu me montres ta notion de tableau de taille fixe. Dans un langage comme le C, C++, etc, je dis pas, mais en Perl, heu...
A+,
Marsh Posté le 28-10-2012 à 13:09:16
gilou a écrit :
|
Exact, abus de langage puisque pour émuler le comportement d'un tableau de taille fixe je suis obligé d'encapsuler les ajouts et les suppression d'élements pour garder la taille du tableau fixée.
On reformule : tu déclares un tableau de la taille du nombre de notes prédéclaré, et tu le parcours comme s'il s'agissait d'un tableau de taille fixe.
Marsh Posté le 28-10-2012 à 13:47:19
Merci tout les 2, ça marche j'ai bien le tableau.
Maintenant, je veux extraire la médiane de mes notes.
Pour cela ,je dois trier mon tableau dans l'ordre croissant, puis trouver la médiane (en fonction de nombre_note pair ou impair).
En fait à la base, j'ai un programme en C et je le traduit en perl.
Et ça ne marche pas, pouvez vous me dire mes erreurs? Déjà la fonction ceil en C existe t'elle en Perl? ( ceil permet d'arrondir à la valeur supérieure)
J'ai mis en comment ma partie sur médiane et tri de tableau.
Code :
|
Marsh Posté le 28-10-2012 à 16:46:44
Tu as la fonction sort() pour trier un tableau sans faire de boucle toute moche : http://docstore.mik.ua/orelly/perl [...] h04_15.htm
Pour l'arrondi, il y a plusieurs méthode, celle que j'utilise le plus souvent est :
$rounded = int ( $orig + 0.5 )
Marsh Posté le 28-10-2012 à 20:35:09
ça ne marche pas, je rajoute ça :
Code :
|
???? je comprend pas
Marsh Posté le 29-10-2012 à 14:27:45
Tu ne comprends pas quoi?
A+,
Marsh Posté le 29-10-2012 à 16:13:55
En fait j'ai mis une parenthèse au lieu d'une accolade, désolé.
Il me reste plus qu'à trouver la médiane :
Code :
|
Marsh Posté le 29-10-2012 à 16:29:38
C'est bon, j'ai compris mon erreur sur la médiane, j'ai oublié +0.5 dans le int etj'ai mis un - à la place d'un + dans la partie pair.
Code :
|
Merci en tout cas
Marsh Posté le 29-10-2012 à 21:42:54
Ma version:
Code :
|
Noter l'utilisation du module IO::Prompt::Hooked afin de faire de l'user input assez blindé.
A+,
Marsh Posté le 27-10-2012 à 19:57:11
Bonjour,
J'ai un problème avec mon programme en langage Perl.
Le but c'est de trouver la moyenne et ecart type de notes.
Enfin, je veux afficher les notes sur la console via un tableau.
C'est là qu'est le problème: quand je fais ma boucle pour afficher le tableau : la console n’affiche que la dernière note plusieurs fois.
Tout le programme marche à part le tableau , donc ligne 5 et ligne 66
Voyez vous où est le problème?
Cordialement
Message édité par chupitoman le 27-10-2012 à 21:33:44