1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    décembre 2015
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : décembre 2015
    Messages : 5
    Points : 0
    Points
    0

    Par défaut Transférer le contenu d'un tableau dans un autre tableau

    Bonjour,

    Un étudiant de MI dispose des données de deux tableaux de taille 20 chacun. Les tableaux T1 et T2 contiennent respectivement des éléments pairs et impairs. Cet étudiant veut transférer les données de T1 et T2 dans un tableau T3 dans un processus d'inter-classement (prendre un élément de T1 suivi d'un élément de T2, etc.). Aide-le à écrire le programme et faire la somme des éléments de T3.

    Aidez-moi à résoudre cet exercice, SVP.

  2. #2
    Membre expert
    Avatar de anapurna
    Homme Profil pro
    Développeur informatique
    Inscrit en
    mai 2002
    Messages
    2 388
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : mai 2002
    Messages : 2 388
    Points : 3 733
    Points
    3 733

    Par défaut

    salut

    et qu'a tu essayer de faire ? .... nous ne somme pas la pour faire ton exercice a ta place
    Nous souhaitons la vérité et nous trouvons qu'incertitude. [...]
    Nous sommes incapables de ne pas souhaiter la vérité et le bonheur, et sommes incapables ni de certitude ni de bonheur.
    Blaise Pascal
    PS : n'oubliez pas le tag

  3. #3
    Membre expert
    Avatar de anapurna
    Homme Profil pro
    Développeur informatique
    Inscrit en
    mai 2002
    Messages
    2 388
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : mai 2002
    Messages : 2 388
    Points : 3 733
    Points
    3 733

    Par défaut

    salut

    en pascal tu ne peut pas utiliser la boucle for donc il va falloir utiliser la boucle while

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
     i:=0 
     while i < (NombreIteration) do 
     begin
       tab[i] := Je fais mon truc 
      ...
       i := i+2  // ou  Inc(i,2);
     end;
    Nous souhaitons la vérité et nous trouvons qu'incertitude. [...]
    Nous sommes incapables de ne pas souhaiter la vérité et le bonheur, et sommes incapables ni de certitude ni de bonheur.
    Blaise Pascal
    PS : n'oubliez pas le tag

  4. #4
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    décembre 2015
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : décembre 2015
    Messages : 5
    Points : 0
    Points
    0

    Par défaut

    VOICI CE MON PROGRAMME MAIS JAI PAS LA REPONSE QUE J'ATTENDS


    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    program project1;
      const n=5;
        m=10;
        x=1;
      type tab=array [1..n] of integer;
           tab1=array [1..n] of integer;
           tab2=array [x..m] of integer;
      var t:tab;
          t1:tab1;
          t2:tab2;
    i:integer;
     
    begin
      writeln('entrer les donnees du tableau 1');
      for i:=1 to n  do
      begin
        readln(T1[i]);
      end;
      writeln('entrer les donnees du tableau 2 ');
      for i:=1 to n do
      begin
        readln(T2[i]);
      end;
     
      for i:=1 to n do
      begin
         T[i]:= T1[i];
         T[i]:= T2[i];
         writeln('t3=',T[i],'  ');
     end;
      readln;
    end.

  5. #5
    Expert confirmé

    Inscrit en
    août 2006
    Messages
    3 732
    Détails du profil
    Informations forums :
    Inscription : août 2006
    Messages : 3 732
    Points : 5 124
    Points
    5 124

    Par défaut

    Bonjour,
    Citation Envoyé par anapurna Voir le message
    en pascal tu ne peut pas utiliser la boucle for donc il va falloir utiliser la boucle while
    Ça vient de sortir ?
    Il court en ce moment une espèce de grippe, mais elle ne court pas très vite, car on peut l'attraper sans courir.

  6. #6
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    décembre 2015
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : décembre 2015
    Messages : 5
    Points : 0
    Points
    0

    Par défaut

    VOICI CE MON PROGRAMME MAIS JAI PAS LA REPONSE QUE J'ATTENDS


    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    program project1;
    const n=5;
    m=10;
    x=1;
    type tab=array [1..n] of integer;
    tab1=array [1..n] of integer;
    tab2=array [x..m] of integer;
    var t:tab;
    t1:tab1;
    t2:tab2;
    i:integer;
     
    begin
    writeln('entrer les donnees du tableau 1');
    for i:=1 to n do
    begin
    readln(T1[i]);
    end;
    writeln('entrer les donnees du tableau 2 ');
    for i:=1 to n do
    begin
    readln(T2[i]);
    end;
     
    for i:=1 to n do
    begin
    T[i]:= T1[i];
    T[i]:= T2[i];
    writeln('t3=',T[i],' ');
    end;
    readln;
    end.

  7. #7
    Rédacteur/Modérateur

    Avatar de Roland Chastain
    Homme Profil pro
    Enseignant
    Inscrit en
    décembre 2011
    Messages
    2 974
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : décembre 2011
    Messages : 2 974
    Points : 10 674
    Points
    10 674
    Billets dans le blog
    4

    Par défaut

    @doumb91

    Bonjour ! Merci de ne pas créer inutilement plusieurs discussions sur le même sujet. Rappelez-vous également que le but de ce forum est de vous aider à progresser, et non pas de faire votre travail à votre place.

  8. #8
    Membre expert
    Avatar de anapurna
    Homme Profil pro
    Développeur informatique
    Inscrit en
    mai 2002
    Messages
    2 388
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : mai 2002
    Messages : 2 388
    Points : 3 733
    Points
    3 733

    Par défaut

    Citation Envoyé par doumb91 Voir le message
    VOICI CE MON PROGRAMME MAIS JAI PAS LA REPONSE QUE J'ATTENDS


    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    program project1;
    const n=5;
    m=10;
    x=1;
    type tab=array [1..n] of integer;
    tab1=array [1..n] of integer;
    tab2=array [x..m] of integer;
    var t:tab;
    t1:tab1;
    t2:tab2;
    i:integer;
     
    begin
    writeln('entrer les donnees du tableau 1');
    for i:=1 to n do
    begin
    readln(T1[i]);
    end;
    writeln('entrer les donnees du tableau 2 ');
    for i:=1 to n do
    begin
    readln(T2[i]);
    end;
     
    for i:=1 to n do
    begin
    T[i]:= T1[i];
    T[i]:= T2[i];
    writeln('t3=',T[i],' ');
    end;
    readln;
    end.
    salut ça aurais presque pu marche sauf que la valeur indiqué dans le T seras toujours la valeur de T2
    si je dis que l'on ne peut pas le faire avec For c'est que je connais assez bien le pascal et qu'il n'existe pas de step pour la boucle for
    donc il est plus simple d'utiliser le while

    sinon tu peut effectivement utiliser une boucle For mais a chaque boucle il te faudra calculer l'indice
    reprenons ton exemple
    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
     
    ...
    const 
    n  = 5;
    m =10;
    x  = 1;
    var
    t1:array [1..n] of integer;
    t2:array [1..m] of integer;
    //T étant la résultante elle doit obligatoirement faire la taille des deux tableau réunie
     t : array [1..n+m] of integer;
     
    i:integer;
    ...
    for i:=1 to n do //ici tu vas que j'usqu'a 5 
    begin
      T[i*2-1] := T1[i]; 
      T[i*2]    := T2[i];
      ...
    end;
    // ton tableau a déjà 10 cases de pris 
    // pour compléter la fin du t2
    for i:=n to m do //ici tu vas que jusqu’à 5 
    begin
      T[i+(n*2)]    := T2[i];
      ...
    end;
    ... voila le tableau est complet
    end.
    voila ce qui peut être fait avec les boucle For mais je trouve cela moins parlant qu'une boucle While
    Nous souhaitons la vérité et nous trouvons qu'incertitude. [...]
    Nous sommes incapables de ne pas souhaiter la vérité et le bonheur, et sommes incapables ni de certitude ni de bonheur.
    Blaise Pascal
    PS : n'oubliez pas le tag

  9. #9
    Expert confirmé

    Inscrit en
    août 2006
    Messages
    3 732
    Détails du profil
    Informations forums :
    Inscription : août 2006
    Messages : 3 732
    Points : 5 124
    Points
    5 124

    Par défaut

    Bonjour,
    Citation Envoyé par anapurna Voir le message
    si je dis que l'on ne peut pas le faire avec For c'est que je connais assez bien le pascal et qu'il n'existe pas de step pour la boucle for
    donc il est plus simple d'utiliser le while
    En quoi while est-il mieux dans ce cas : la boucle for a obligatoirement un step de 1 (ou -1), et comme le compteur de boucle sert à adresser les cellules de tableaux, c'est précisément ce dont on a besoin.

    Ceci étant dit, utilise while si TOI tu préfères ça, mais ne dit pas que c'est mieux (c'est exactement la même chose de dire "ce n'est pas bon" quand on te donne à manger quelque chose que tu n'aimes pas...).

    Il court en ce moment une espèce de grippe, mais elle ne court pas très vite, car on peut l'attraper sans courir.

  10. #10
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    décembre 2015
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : décembre 2015
    Messages : 5
    Points : 0
    Points
    0

    Par défaut

    merci les garsde m'avoir aider moi aussi je le ferais dans mon pays .

Discussions similaires

  1. [CR] besoin d'aide sur les formules
    Par GuillaumeDSA dans le forum Formules
    Réponses: 4
    Dernier message: 10/07/2003, 12h19
  2. Réponses: 2
    Dernier message: 27/02/2003, 01h33
  3. [Kylix] Aide sur BitBlt
    Par mic006 dans le forum Kylix
    Réponses: 1
    Dernier message: 10/12/2002, 22h54
  4. Aide sur une fenetre
    Par Ray-j dans le forum Autres éditeurs
    Réponses: 4
    Dernier message: 29/11/2002, 08h51

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