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

Pascal Discussion :

[Exercice] Afficher tous les nombres


Sujet :

Pascal

  1. #1
    Candidat au Club
    Inscrit en
    Mars 2009
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 5
    Points : 2
    Points
    2
    Par défaut [Exercice] Afficher tous les nombres
    Salut tout le monde, j'ai un programme que j'ai pas pu résoudre.
    Le voilà :
    On se propose de saisir un entier N de trois chiffres non nuls, de déterminer et d'afficher tous les nombres qui peuvent être formés par les chiffres de N ainsi que le plus petit et le plus grand de ces nombres.
    Et l'autre programme c'est :
    Soit un tableau T de n entiers (on se propose que n >= 2). On veut déterminer et afficher le kieme plus petit élément (1 <= k <= N) et l'indice de sa première apparition dans le tableau T.
    Et merci en plus....

  2. #2
    Rédacteur
    Avatar de darrylsite
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 299
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 299
    Points : 2 501
    Points
    2 501
    Par défaut
    Je vais te donner une idée sur le premier exercice . Tu pourras decomposer le nombre de trois chiffres dans un tableau de trois entiers. Pour decomposer un nombre, tu peux utiliser le fait qu'un nombre en base 10 s'ecrit :
    253= 2*10^2+5*10^1+5*10^0
    pour te permetre de recuperer les differents chiffres. Les operateur div et mod pourront etre utils.

    Une fois le tableau crée, des boucles for indicées sur le tableau peuvent t'aider à reconstituer les nombres en utilisant l'ecriture en base 10 comme je l'ai montré plus haut.

  3. #3
    Candidat au Club
    Inscrit en
    Mars 2009
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    pas mal mais je cherche une procedure qui permut les chiffres

  4. #4
    Expert confirmé

    Inscrit en
    Août 2006
    Messages
    3 942
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 3 942
    Points : 5 654
    Points
    5 654
    Par défaut
    Boe,

    L' exercice consistant à générer toutes les combinaisons pour une série de symboles (puisque c'est à cela que revient ton problème) est récurrent.

    Un peu de recherche va te permettre de trouver.

    Sinon, tu n'as pas besoin de tableau pour stocker les chiffres de ton nombre, il suffit de le convertir en chaîne, ce qui revient d'ailleurs à créer un tableau, sauf que ce tableau est spécial par les usages qu'il autorise.
    Si les cons volaient, il ferait nuit à midi.

  5. #5
    Candidat au Club
    Inscrit en
    Mars 2009
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    mais après le convertir en chaine comment le permuter

  6. #6
    Rédacteur
    Avatar de darrylsite
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 299
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 299
    Points : 2 501
    Points
    2 501
    Par défaut
    Citation Envoyé par droggo Voir le message
    Sinon, tu n'as pas besoin de tableau pour stocker les chiffres de ton nombre, il suffit de le convertir en chaîne, ce qui revient d'ailleurs à créer un tableau, sauf que ce tableau est spécial par les usages qu'il autorise.
    Convertir en chaine est la plus simple des solutions. J'ai pensé qu'en faisant ça, l'exercice perd le seul truc qui peut faire un peu réfléchir. Puisque cela revient à utiliser une fonction toute faite sans avoir à se salir les mains

  7. #7
    Expert confirmé

    Inscrit en
    Août 2006
    Messages
    3 942
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 3 942
    Points : 5 654
    Points
    5 654
    Par défaut
    Bie,
    Citation Envoyé par darrylsite Voir le message
    Convertir en chaine est la plus simple des solutions. J'ai pensé qu'en faisant ça, l'exercice perd le seul truc qui peut faire un peu réfléchir. Puisque cela revient à utiliser une fonction toute faite sans avoir à se salir les mains
    Non, le plus simple est de lire directement dans une chaîne.

    Et apparemment, le problème pour zlatino n'est pas là (il a demandé 2 fois)
    Citation Envoyé par zlatino Voir le message
    mais après le convertir en chaine comment le permuter
    Si les cons volaient, il ferait nuit à midi.

  8. #8
    Rédacteur
    Avatar de darrylsite
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 299
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 299
    Points : 2 501
    Points
    2 501
    Par défaut
    Concernant la permutation,
    J'ai trouvé un bout de programme. Le programme marche si les trois chiffres sont tous différents. Dans le cas contraire, il y a des nombres qui se repetent.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    program test;
    var tab : array[1..3] of integer;
        i,j,k,s :integer;
    begin
     tab[1]:=1;
     tab[2]:=2;
     tab[3]:=3;
     s:=0;
     for i:=1 to 3 do
      for j:=1 to 3 do
       for k:=1 to 3 do
        if(i<>j) and (i<>k) and (j<>k) then   
          writeln(tab[i], tab[j],tab[k]);
     
    readln;
    end.

Discussions similaires

  1. Afficher tous les diviseurs d'un nombre
    Par momo1367 dans le forum Pascal
    Réponses: 8
    Dernier message: 26/11/2013, 21h25
  2. [TPW] Afficher tous les nombres parfaits dans l'intervalle 1..99999
    Par fatma2013 dans le forum Turbo Pascal
    Réponses: 1
    Dernier message: 30/10/2013, 18h45
  3. afficher tous les champs d'une table
    Par julio84 dans le forum ASP
    Réponses: 8
    Dernier message: 19/01/2005, 10h31
  4. Afficher tous les champs d'une table avec dbexpress et MySQL
    Par LHT dans le forum Bases de données
    Réponses: 2
    Dernier message: 25/06/2004, 17h11
  5. Afficher tous les fichiers .htm du dd
    Par neo4010 dans le forum Linux
    Réponses: 3
    Dernier message: 20/01/2004, 13h25

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