Besoin daide svp
Fermé
ficatore
Messages postés
11
Date d'inscription
vendredi 1 février 2008
Statut
Membre
Dernière intervention
3 mars 2008
-
18 févr. 2008 à 09:03
amigo - 18 févr. 2008 à 13:38
amigo - 18 févr. 2008 à 13:38
A voir également:
- Besoin daide svp
- Besoin daide sur headhunter:redemption - Forum Jeux vidéo
- J'aurai besoin daide pour mon TPE! - Forum Windows
- Comment installer MSXML 4.0 besoin daide !!!! - Forum Logiciels
- Besoin daide pour desinstaller realtek audio ✓ - Forum carte son
- Jai besoin daide pour pcsx2 0.9.4 ✓ - Forum jeux PC/Mac
6 réponses
Bonjour,
Dans tes structures il n'y a pas d'élement commun qui permet de faire le lien
entre les enregistements du fichier netmap.txt et ceux du fichier téléphone.txt, le nunéro du bureau par exemple.
C'est comme ça que sont organisées les bases de données en général.
On suppose donc que tes deux fichiers ont exactement le meme nombre d'enregistrements.
L'élément commun sera alors le numéro d'enregistrement (ou nurero de ligne).
Tu n'as pas besoin de "tableau[1...X] de téléphone" ni de "tableau[1...X] de netmap"
a moins que tu ne veuille charger les deux fichiers en mémoire et travailler sur la mémoire.
Procédure RECHERCHE()
Variable bureau1,bureau2 :chaine
Debut
Ouvrir(netmap.txt, L)
Ouvrir(téléphone.txt, L)
{initialiser chaines vide}
bureau1 <- ""
bureau2 <- ""
{saisir bureau1, chaine vide non admise}
Tantque bureau1=""
Saisir bureau1
Fin Tantque
{lire sequentiellement les deux fichiers en parrallèle}
{on arrête de lire les fichier si on a atteint la fin du fichier ou si bureau1=bureau2}
Tant que (non (FinFichier netmap.txt)) ou (non (bureau1=bureau2))
Lire netmap.txt -> netmap
Lire téléphone.txt -> téléphone
bureau2 <- netmap.bureau
Fintantque
Fermer(netmap.txt)
Fermer(téléphone.txt)
Si bureau1 = bureau2 alors
Afficher( téléphone.numtel, netmap.bureau)
sinon
Afficher("Ce bureau n'existe pas")
FinSi
Fin
A+
Dans tes structures il n'y a pas d'élement commun qui permet de faire le lien
entre les enregistements du fichier netmap.txt et ceux du fichier téléphone.txt, le nunéro du bureau par exemple.
C'est comme ça que sont organisées les bases de données en général.
On suppose donc que tes deux fichiers ont exactement le meme nombre d'enregistrements.
L'élément commun sera alors le numéro d'enregistrement (ou nurero de ligne).
Tu n'as pas besoin de "tableau[1...X] de téléphone" ni de "tableau[1...X] de netmap"
a moins que tu ne veuille charger les deux fichiers en mémoire et travailler sur la mémoire.
Procédure RECHERCHE()
Variable bureau1,bureau2 :chaine
Debut
Ouvrir(netmap.txt, L)
Ouvrir(téléphone.txt, L)
{initialiser chaines vide}
bureau1 <- ""
bureau2 <- ""
{saisir bureau1, chaine vide non admise}
Tantque bureau1=""
Saisir bureau1
Fin Tantque
{lire sequentiellement les deux fichiers en parrallèle}
{on arrête de lire les fichier si on a atteint la fin du fichier ou si bureau1=bureau2}
Tant que (non (FinFichier netmap.txt)) ou (non (bureau1=bureau2))
Lire netmap.txt -> netmap
Lire téléphone.txt -> téléphone
bureau2 <- netmap.bureau
Fintantque
Fermer(netmap.txt)
Fermer(téléphone.txt)
Si bureau1 = bureau2 alors
Afficher( téléphone.numtel, netmap.bureau)
sinon
Afficher("Ce bureau n'existe pas")
FinSi
Fin
A+
ficatore
Messages postés
11
Date d'inscription
vendredi 1 février 2008
Statut
Membre
Dernière intervention
3 mars 2008
18 févr. 2008 à 11:39
18 févr. 2008 à 11:39
donc si jai bien compris tu ma tout refait mon algo.lol
merci
et tu sur ke le tien fonctionne?ET KE C BIEN SA,
merci
et tu sur ke le tien fonctionne?ET KE C BIEN SA,
ficatore
Messages postés
11
Date d'inscription
vendredi 1 février 2008
Statut
Membre
Dernière intervention
3 mars 2008
18 févr. 2008 à 11:39
18 févr. 2008 à 11:39
donc si jai bien compris tu ma tout refait mon algo.lol
merci
et tu sur ke le tien fonctionne?ET KE C BIEN SA,
merci
et tu sur ke le tien fonctionne?ET KE C BIEN SA,
re Bonjour,
A la syntaxe près, oui ça fonctionne.
Maintenant, tu peux faire l'exo en chargeant les fichiers en mémoire,
à l'execution c'est bien plus rapide, et on ne lit les fichiers qu'une seule fois.
Tu avais bien commencé la première fois.
Ecris une procédure qui lit les fichiers ligne par ligne et qui stocke les données dans
"tableau[1...X] de téléphone" et "tableau[1...X] de netmap", il faut mémoriser le nombres de lignes lues.
Modifie la procédure RECHERCHE() , mais cette fois pointe sur les tableau et non plus sur les fichiers.
Propose moi ta version, je te dirais ce j'en pense.
Salut.
A la syntaxe près, oui ça fonctionne.
Maintenant, tu peux faire l'exo en chargeant les fichiers en mémoire,
à l'execution c'est bien plus rapide, et on ne lit les fichiers qu'une seule fois.
Tu avais bien commencé la première fois.
Ecris une procédure qui lit les fichiers ligne par ligne et qui stocke les données dans
"tableau[1...X] de téléphone" et "tableau[1...X] de netmap", il faut mémoriser le nombres de lignes lues.
Modifie la procédure RECHERCHE() , mais cette fois pointe sur les tableau et non plus sur les fichiers.
Propose moi ta version, je te dirais ce j'en pense.
Salut.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
ficatore
Messages postés
11
Date d'inscription
vendredi 1 février 2008
Statut
Membre
Dernière intervention
3 mars 2008
18 févr. 2008 à 13:04
18 févr. 2008 à 13:04
en faite je kroi ke ta pas vraiment compri le principe de cette algo lol!
le but de cette algo et le suivan:saisis du num de bureau dan le fichier netmap une fois ce bureau trouver celui ci nous retourne les dresse mac presente dan ce bureau ensuite nous prenon les dresse mac retourné et nous allon cherhcher dan le fichier téléphone a kel num de teléphone elle corresponde
le but de cette algo et le suivan:saisis du num de bureau dan le fichier netmap une fois ce bureau trouver celui ci nous retourne les dresse mac presente dan ce bureau ensuite nous prenon les dresse mac retourné et nous allon cherhcher dan le fichier téléphone a kel num de teléphone elle corresponde
OK, je n'avais pas bien lu l'énoncé
netmap.txt:switch;n°port;bureau;....adressmac
téléphone.txt:numtel;nompersonne;adresemac
On a bien un élément commun dans les deux fichiers : adresemac
Alors voilà le correctif
Procédure RECHERCHE()
Variable bureau1,bureau2, adresse1, adresse2 :chaine
Debut
Ouvrir(netmap.txt, L)
Ouvrir(téléphone.txt, L)
{initialiser chaines vide}
bureau1 <- ""
bureau2 <- ""
{saisir bureau1, chaine vide non admise}
Tantque bureau1=""
Saisir bureau1
Fin Tantque
{lire sequentiellement le fichier netmap.txt}
{on arrête de lire les fichier si on a atteint la fin du fichier ou si bureau1=bureau2}
Tant que (non (FinFichier netmap.txt)) ou (non (bureau1=bureau2))
Lire netmap.txt -> netmap
bureau2 <- netmap.bureau
adresse1 <- netmap.adressemac
Fintantque
Fermer(netmap.txt)
Si bureau1 = bureau2 alors
debut
adresse2 <- ""
{lire sequentiellement le fichier téléphone.txt}
{on arrête de lire les fichier si on a atteint la fin du fichier ou si adresse1=adresse2}
Tant que (non (FinFichier téléphone.txt)) ou (non (adresse1=adresse2))
Lire téléphone.txt -> téléphone
adresse2 <- téléphone.adressemac
Fintantque
Fermer(téléphone.txt)
Afficher(téléphone.numtel, netmap.bureau)
fin
sinon
Afficher("Ce bureau n'existe pas")
FinSi
Fin
Cette fois je crois que c'est bon.
netmap.txt:switch;n°port;bureau;....adressmac
téléphone.txt:numtel;nompersonne;adresemac
On a bien un élément commun dans les deux fichiers : adresemac
Alors voilà le correctif
Procédure RECHERCHE()
Variable bureau1,bureau2, adresse1, adresse2 :chaine
Debut
Ouvrir(netmap.txt, L)
Ouvrir(téléphone.txt, L)
{initialiser chaines vide}
bureau1 <- ""
bureau2 <- ""
{saisir bureau1, chaine vide non admise}
Tantque bureau1=""
Saisir bureau1
Fin Tantque
{lire sequentiellement le fichier netmap.txt}
{on arrête de lire les fichier si on a atteint la fin du fichier ou si bureau1=bureau2}
Tant que (non (FinFichier netmap.txt)) ou (non (bureau1=bureau2))
Lire netmap.txt -> netmap
bureau2 <- netmap.bureau
adresse1 <- netmap.adressemac
Fintantque
Fermer(netmap.txt)
Si bureau1 = bureau2 alors
debut
adresse2 <- ""
{lire sequentiellement le fichier téléphone.txt}
{on arrête de lire les fichier si on a atteint la fin du fichier ou si adresse1=adresse2}
Tant que (non (FinFichier téléphone.txt)) ou (non (adresse1=adresse2))
Lire téléphone.txt -> téléphone
adresse2 <- téléphone.adressemac
Fintantque
Fermer(téléphone.txt)
Afficher(téléphone.numtel, netmap.bureau)
fin
sinon
Afficher("Ce bureau n'existe pas")
FinSi
Fin
Cette fois je crois que c'est bon.