[PERL]

Fermé
Bj0 - 20 avril 2007 à 16:42
 Bj0 - 24 avril 2007 à 09:24
Bonjour,
J'ai un petit ( voir un gros ;)) probleme que meme des programmeur de métier n'ont pas réussi à élucider.
Mon programme en perl se base sur la comparaison de deux fichiers textes pour ceci j 'utilise des sémaphores afin d'éviter de lire deux fois une meme ligne et donc optimiser la vitesse d'exécution ( surtout que chaque fichier comporte plus de 10000 lignes ...) .
pour tester, jai comparé deux fichiers identiques, il me dit qu'une ligne differe entre les 2 fichiers ca ne serais que ca je me dirai que mon code n'est pas bon ... mais ... MAIS ... il m'affiche une ligne différente a chaque execution du programme ... et que la comparaison des autres ligne s'avere bonne...

exemple :

execution 1 : AJOUT ligne 3
exceution 2: AJOUT 30
exceution 2: AJOUT 67



ASSEZ etonnant ... MEME TRES ETONNANT .. .VOILA JE COMPREND RIEN...
Promis je n'est pa mis de caractere aléatoire...
Est ce que ca pourrai venir de la puissance de la machine?
Le programmeur de métier ma dit que la taille mémoire réservé a une variable est trop petite... mais en perl il n' y pas ce probleme...

Lorsque on exécuté 3 fois le meme programme dans les meme condition ne doit ton pas avoir le même résultat?

TOUTES mes connaissance en informatique se trouve en contradiction avec ce probleme...

HELP ME
MERCI :p

6 réponses

dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
20 avril 2007 à 16:54
Hi
Il faudrait voir le code. Mais si je peux me permettre, quand on accuse l'ordinateur de se tromper, on fait deux erreurs, la première est d'accuser l'ordinateur ...
:-))

ps: une checksum des 2 fichiers prouve qu'ils sont bien les mêmes ?
0
jai fais copier / coller 50 fois ... jai tester je sais pa combien de fois ...
les 2 fichiers sont rigoureusement les memes...
quant au code je l'ai laisser sur le serveur de l'entreprise ou je fait mon stage ... mais perso je sui pa sur que ca viennent du code... meme si je sais me remettre en question... :D
je ne pense pas etre fou mais cette histoire va me le faire devenir :p

je repete ... dans les memes conditions esc que c'est possible qu'un programme ne donne pas le meme resultat a chaque fois ... reponse OUI .. mais pourquoi? ( et sans random dans le programme bien sur :p)
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 895
20 avril 2007 à 19:10
Salut,

Comme le sous-entend dubcek, on n'est pas devin, et de ce fait l'accès à ton code serait un plus pour élucider ton problème !

De plus comme comme sous-entendu (enfin je suppose) encore une fois par dubcek, accusé l'ordi c'est pas gentil surtout quand tu postes 2 fois la même faute (soulignée) et 2 fois l'exécution n° 2 :

execution 1 : AJOUT ligne 3
exceution 2: AJOUT 30
exceution 2: AJOUT 67


Tout ça sans méchanceté, juste pour dire que si tu es aussi attentif à ton code qu'à ton post...

;-))
0
lol laissez tomber !!! que des glandu comme moi qui comprenne rien ... JE DEMANDE LAIDE DE GENS QUI SY CONNAISSE, PA DES GROS GLANDU qui ne save que critiqué le monde... je vous dit ke 2 programmeurs de métier il font ca depuis 10 ans ... non pas trouvé le probleme donc gardé vos remarke pour vous ... cela ne maide pa du tout ... MERCI BIEN...
0
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
21 avril 2007 à 15:02
Ravi de savoir que tu as la chance de travailler avec l'élite des programmeurs à qui tu poses des problèmes tellement complexes qu'ils sont dépassés.

Ca vaut la peine de postuler : http://www.nasajobs.nasa.gov/
0
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
21 avril 2007 à 15:08
Un programme peut générer des résultats aléatoires, si par exemple, une erreur de pointeur ou un dépassement de tableau s'exécute à des locations mémoires différentes à chaque lancement.
Une erreur de paramètres lors d'un appel à un sous programme va retourner des valeurs au hasard en fonction de ce qui se trouve sur la pile à ce moment la.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
C'est ce que je voulais savoir ... je vais enfin pouvoir reprendre mon code en comprenant un peu mieu d'où peut venir l 'erreur ... ( je voualais trouver l'erreur seul) je n'avais jamais eut ce probleme ... je pouvais pas deviner ... dubcek, Je ne prend pa en compte tes remarques , mais je te remerci pour ta reponse ... :p
0
Grace a ton indication jai rectifié mon code et maintenant ca marche tré bien ... merci bien ;D
0