IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

Un programme pas trop compréhensible


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 36
    Par défaut Un programme pas trop compréhensible
    Re-bonjour voila l'énnoncé d'un exercice que j'ai à faire mais je ne comprends pas trop cette histoire d'itérateur si quelqu'un voulez bien m'expliquez ce qu'on attend de moi dans l'exercice,
    merci d'avance a vous tous!!!

    Voici l'ennoncé:

    Ecrivez un programme qui accumule son entrée standard en interne jusqu'à ce
    qu'il y trouve une des deux lignes suivantes : "display" ou "rdisplay". Les
    lignes vides sont accumulées aussi.

    Dans le premier cas, il affichera alors toutes les lignes accumulées dans
    l'ordre d'apparition. Dans le second, il les affichera dans l'ordre inverse.

    Vous devez passer par des itérateurs, et utiliser le BON TYPE d'itérateur
    suivant la direction du parcours.

    La ligne "déclencheuse" n'est pas accumulée, et donc pas affichée.

    Si aucune des deux lignes n'est trouvée dans l'entrée standard, on agit
    comme si le flux s'était terminé par une ligne "display".

    Après avoir traité une ligne "display" ou "rdisplay", le programme
    recommence à accumuler des lignes, en ayant vidé son stockage au préalable.

    Si l'entrée standard est vide, le programme n'affiche bien entendu rien du
    tout.

    Exemples :

    $ cat was_demo1
    hello
    world
    great
    $ ./was < was_demo1
    hello
    world
    great
    $ cat was_demo2
    hello
    world
    rdisplay
    this
    is
    great
    $ ./was < was_demo2
    world
    hello
    this
    is
    great
    $ ./was < /dev/null
    $

  2. #2
    Membre chevronné
    Inscrit en
    Novembre 2006
    Messages
    362
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 362
    Par défaut
    Salut,

    As-tu lu le mégacours sur :
    - les conteneurs (et donc les itérateurs)
    - les flux d'entrée / sortie
    ?

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 36
    Par défaut
    Le flux d'entrée est de sortie oui mais pas les conteneurs.
    En fait mon pb c'est que jpense savoir comment faire pour afficher les lignes en allant mais pas ds le sens inverse!
    Alors merci a tous ceux qui voudront bien m'aider.

  4. #4
    Membre éprouvé
    Profil pro
    Inscrit en
    Février 2005
    Messages
    88
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2005
    Messages : 88
    Par défaut
    Fais des recherches sur les iterateurs, tu verras qu'il en existe des 'reverse'

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 36
    Par défaut
    Est ce que ca marche si :
    je prends un vecteur et lui enregistre toute les lignes de l'entrée standard ensuite je le parcour avec une boucle while qui selon qu'elle rencontre display ou rdisplay m'affiche tout les éléments dans l'ordre normal ou inverse. j'enregistre tout ca au fur et a mesure dans un autre vecteur et a la fin je fait une autre boucle while pour l'affichage!!!
    Dites moi ce que vous en pensez et surtout est ce faisable ou est ce la meilleure soluce ?
    Merci d'avance ...

  6. #6
    Membre chevronné
    Inscrit en
    Novembre 2006
    Messages
    362
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 362
    Par défaut
    Salut,

    Ca n'est pas incohérent.
    Mais tu dois pouvoir penser mieux que cela.

    Notament, plutot que de tout stocker dans un vecteur puis tout reparcourir pour tester s'il y a ton mot clef, tu pourrais peut-être tester les entrées une par une au fur et à mesure non ?

Discussions similaires

  1. Un programme qui veut bosser; mais pas trop.
    Par Flodelarab dans le forum C++
    Réponses: 8
    Dernier message: 28/08/2006, 15h33
  2. [CSS] Instruction Padding : FireFox pas trop comprendre ?
    Par DemonKN dans le forum Mise en page CSS
    Réponses: 9
    Dernier message: 11/08/2005, 15h23
  3. Prob somme SQL (pas trop facile, help!!!!!)
    Par nachi dans le forum Langage SQL
    Réponses: 7
    Dernier message: 20/07/2005, 16h42
  4. Réponses: 5
    Dernier message: 23/06/2004, 22h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo