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 :

Afficher les multiples de 7 inférieurs à un entier quelconque


Sujet :

Pascal

  1. #1
    Invité
    Invité(e)
    Par défaut Afficher les multiples de 7 inférieurs à un entier quelconque
    Bonjour à toutes et à tous les amis

    Mon but est de créer un programme (qui demande un nombre entier à l'utilisateur et) qui affiche tous les multiples positifs de 7 inférieur à ce nombre.
    Par exemple si je tape "97", le programme devra m'afficher: 0,7,14,21,28,35,42,49,56,63,70,77,84,91.

    Mon plus GROS porblème, c'est que je ne saisie pas commentt incruster ma fonction de multiples de 7, j'ai suivi des tutos mais là, je ne peux PLUS avancé
    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
    PROGRAM multiple;
    var x, i, s : integer ;
     
    BEGIN
     
      Write ('Entrez un nombre entier positif: ') ; readln (x) ;
      i:=0;
      s:=0;
      while x<=s do begin
        i:=i+7;
        s:=i+i;
      end{while};
     
    writeln('les multiples positifs de 7 inférieur à ',x,' sont:', i)
     
    END.
    Par OU commmencer??? ça a l'air simple ce programme mais je ne saisis pas........
    Dernière modification par Alcatîz ; 13/10/2007 à 22h20. Motif: balises code (bouton #)

  2. #2
    Responsable Pascal, Lazarus et Assembleur


    Avatar de Alcatîz
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Mars 2003
    Messages
    7 975
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2003
    Messages : 7 975
    Points : 59 741
    Points
    59 741
    Billets dans le blog
    2
    Par défaut
    Bonjour et bienvenue !

    Dans ta boucle, il te suffit d'incrémenter une variable (pas besoin de deux) de 7 à chaque itération et de l'afficher si elle est inférieure au nombre entré par l'utilisateur (dans le cas contraire, la boucle se termine).
    Donc, l'affichage est dans la boucle et non en dehors.


  3. #3
    Expert confirmé

    Inscrit en
    Août 2006
    Messages
    3 954
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 3 954
    Points : 5 675
    Points
    5 675
    Par défaut
    Hio,

    - chercher le + grand multiple de 7 <= à ta limite

    - pour i = 0 par pas de 7, afficher i.

    Sur ton code : fais le fonctionner à la main, et regarde ce que ça donne, tu verras d'où viennent certains de tes problèmes

    ici, Édité

    Joli croisement.

  4. #4
    Invité
    Invité(e)
    Par défaut
    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
    PROGRAM multiple;
    var x, i : integer ;
     
    BEGIN
     
      Write ('Entrez un nombre entier positif: ') ; readln (x) ;
      i:=0;
      while x<=100 do begin
        i:=i+7;
        writeln('les multiples positifs de 7 inférieur à ',x,' sont:', i);
      end{while};
     
     
     
    END.

    Là, j'ai réussi à faire apparaitre les multiples de 7 MAIS ils senchainent à l'infini (jusqu'à 32000 et quelque...) MAIS comment faire "la limite" dont vous me parlez!!!
    chercher le + grand multiple de 7 <= à ta limite
    ???

  5. #5
    En attente de confirmation mail
    Étudiant
    Inscrit en
    Août 2007
    Messages
    419
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2007
    Messages : 419
    Points : 263
    Points
    263
    Par défaut
    Citation Envoyé par star7dust Voir le message
    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
    PROGRAM multiple;
    var x, i : integer ;
     
    BEGIN
     
      Write ('Entrez un nombre entier positif: ') ; readln (x) ;
      i:=0;
      while x <=100 do begin
        i:=i+7;
        writeln('les multiples positifs de 7 inférieur à ',x,' sont:', i);
      end{while};
     
     
     
    END.

    Là, j'ai réussi à faire apparaitre les multiples de 7 MAIS ils senchainent à l'infini (jusqu'à 32000 et quelque...) MAIS comment faire "la limite" dont vous me parlez!!! ???
    il faut un test de i avec ton x pour voir si tu as atteint ou pas encore la valeur x entré par l'utilisateur

  6. #6
    Expert confirmé
    Avatar de Loceka
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    2 276
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 2 276
    Points : 4 843
    Points
    4 843
    Par défaut
    Citation Envoyé par star7dust Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
      i:=0;
      while x<=100 do begin
        i:=i+7;
        writeln('les multiples positifs de 7 inférieur à ',x,' sont:', i);
      end{while};
    Pourquoi "100" ???
    A la rigueur que tu te trompes de variable à incrémenter je comprends, mais pourquoi ce test "x <= 100" ?

    Quoi qu'il en soit, comme le dit acacia, le test se fait sur la variable "i" (que l'on compare à "x") et non sur "x".

  7. #7
    Invité
    Invité(e)
    Par défaut
    Là ça marche plus ou moins.

    Jvais suivre vos instructions et vous dire quoi demain en espérant que ma nulité en informatique ne vous oblige à vous moquer de moi

  8. #8
    Invité
    Invité(e)
    Par défaut
    Maintenant, je souhaiterais obtenir une disposition de mes résultats telle que dans l'image jointe intitulée "Modèle voulu".

    Ce n'est pas une question de programmation mais plutôt une question de formalité. Vous avez une idée ou cela est impossible?
    Images attachées Images attachées   
    Dernière modification par Invité ; 19/11/2007 à 00h50.

  9. #9
    Expert confirmé

    Inscrit en
    Août 2006
    Messages
    3 954
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 3 954
    Points : 5 675
    Points
    5 675
    Par défaut
    Jio,
    Citation Envoyé par star7dust Voir le message
    Maintenant, je souhaiterais obtenir une disposition de mes résultats telle que dans l'image jointe intitulée "Modèle voulu".

    Ce n'est pas une question de programmation mais plutôt une question de formalité. Vous avez une idée ou cela est impossible?
    Il suffit d'afficher la phrase avant d'entrer dans la boucle, puis d'afficher les différentes valeurs dans la boucle, sans aller à la ligne à chaque écriture.

    Ça tombe assez sous le sens, n'est-ce pas ?

  10. #10
    En attente de confirmation mail
    Étudiant
    Inscrit en
    Août 2007
    Messages
    419
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2007
    Messages : 419
    Points : 263
    Points
    263
    Par défaut
    les multiples de 7 inférieur à x sont:

    boucle

    write (i); /*sans ln*/

    fin de la boucle

  11. #11
    Expert confirmé
    Avatar de Loceka
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    2 276
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 2 276
    Points : 4 843
    Points
    4 843
    Par défaut
    avec un petit espace quand même

  12. #12
    Invité
    Invité(e)
    Par défaut
    ça marche MAIS TOUT est collé!!!

    avec un petit espace quand même
    Et il est ou cette espace??? j'ai essayer un peu partout, ça ne marche pas!!!
    Images attachées Images attachées
    Dernière modification par Invité ; 19/12/2007 à 01h10.

  13. #13
    En attente de confirmation mail
    Étudiant
    Inscrit en
    Août 2007
    Messages
    419
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2007
    Messages : 419
    Points : 263
    Points
    263
    Par défaut
    write(' ') ou write (',')

  14. #14
    Invité
    Invité(e)
    Par défaut
    merci à tous quand même!!! dommage que je ne puisse pas vous envoyer des chocolat par la poste !!! en tout cas MERCI!
    Images attachées Images attachées     
    Dernière modification par Invité ; 19/11/2007 à 00h50.

  15. #15
    Expert confirmé

    Inscrit en
    Août 2006
    Messages
    3 954
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 3 954
    Points : 5 675
    Points
    5 675
    Par défaut
    Moe,
    Citation Envoyé par star7dust Voir le message
    merci à tous quand même!!! dommage que je ne puisse pas vous envoyer des chocolat par la poste !!! en tout cas MERCI!
    Par Paypal ?


+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [TPW] Afficher les entiers premiers circulaires existants dans un intervalle
    Par mitcha95 dans le forum Turbo Pascal
    Réponses: 1
    Dernier message: 28/04/2014, 18h46
  2. Réponses: 11
    Dernier message: 04/02/2012, 19h24
  3. Réponses: 23
    Dernier message: 14/12/2011, 21h56
  4. Réponses: 3
    Dernier message: 11/10/2007, 01h28

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