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 :

Programmation en langage C


Sujet :

C

  1. #1
    Nouveau Candidat au Club
    Femme Profil pro
    Chercheur en informatique
    Inscrit en
    Juillet 2017
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Juillet 2017
    Messages : 5
    Points : 0
    Points
    0
    Par défaut Programmation en langage C
    Bonjour tout le monde , j'ai un petit exercice , le but est d'écrire un programme en langage C qui accepte 3 listes de valeurs et affiche pour chaque liste de valeurs : la valeur minimale , la valeur maximale , la moyenne des valeurs , la variance , le nombre des valeurs inferieurs à la moyenne , le nombre des valeurs superieurs à la moyenne , j'ai essayé de faire ce travail , il compile mais il ne donne pas des resultats correctes , aidez moi svp
    je cherche aussi comment faire l'intersection et l'union de ces 3 listes de valeurs
    Images attachées Images attachées  
    Fichiers attachés Fichiers attachés
    • Type de fichier : c TP2.c (1,5 Ko, 67 affichages)

  2. #2
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 519
    Points
    41 519
    Par défaut
    Attention, tu traites mal le retour de scanf().
    Aussi, il m'a l'air vachement compacté au détriment de la lisibilité, ce code. Epita/Epitech? ah non, ils ne te laisseraient pas utiliser scanf()
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  3. #3
    Membre averti
    Homme Profil pro
    très occupé
    Inscrit en
    Juillet 2014
    Messages
    137
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : très occupé

    Informations forums :
    Inscription : Juillet 2014
    Messages : 137
    Points : 411
    Points
    411
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    int min(int t[],int n)
      { int m,i;
        for (m=t[0],i=1;i<n;i++)
        { if (t[i]<m)
            m=t[i];
        return(m);
        }
      }
    ton return est mal placé, car il devrait être en dehors de la boucle for, et avant la fin de la fonction, sinon, ta fonction termine de s'exécuter et retourne à la fonction appelante dès la première itération de la boucle for.

    comme cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    int min(int t[],int n)
    {
        int m,i;
        for (m=t[0],i=1;i<n;i++) {
            if (t[i]<m)
                m=t[i];
        }
        return m;
    }
    tu fais la même erreur pour max(), nbre_inf_ala_moy() et nbre_sup_ala_moy()

    Dans main, tu dois aussi conserver le résultat de la fonction moyenne() dans la variable m, qui est ensuite utilisée en paramètres des autres fonctions, sinon elle ne contiendra pas le résultat attendu (et contiendra une valeur imprévisible car elle n'est pas initialisée).

    Sinon, ton prototype de main est non standard et ton code mal indenté, et je partage l'opinion de Médinoc sur le fait qu'il est un peu trop compact à mon goût.

    Enfin, quand tu postes sur le forum, il est mieux que tu utilises la balise code pour copier-coller le code dans ton message (bouton # de la fenêtre d'édition), cela permet aux membres du forum de voir directement ton code et de savoir de quoi on parle.

  4. #4
    Nouveau Candidat au Club
    Femme Profil pro
    Chercheur en informatique
    Inscrit en
    Juillet 2017
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Juillet 2017
    Messages : 5
    Points : 0
    Points
    0
    Par défaut
    Merci à vous pour l'aide , mais il reste comment afficher l'intersection et l'union de ces 3 listes de valeurs , franchement je n'ai aucune idée

  5. #5
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 115
    Points : 32 967
    Points
    32 967
    Billets dans le blog
    4
    Par défaut
    Sais-tu ce qu'est une intersection ? Une union ?
    Suffit de créer la liste d'intersection et la liste d'union à partir des listes qui t'intéressent.
    En ajoutant une fonction pour vérifier qu'une valeur est présente dans une liste ce devrait être assez trivial.
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

  6. #6
    Nouveau Candidat au Club
    Femme Profil pro
    Chercheur en informatique
    Inscrit en
    Juillet 2017
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Juillet 2017
    Messages : 5
    Points : 0
    Points
    0
    Par défaut
    l'union des 3 listes : les valeurs des 3 listes
    l'intersection des 3 listes : les valeurs en communs des 3 listes
    est ce que vous pouvez m'aider un peu plus ?

    j'ai essayé mais je ne sais pas quels sont mes fautes
    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
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    #include <stdio.h>
     
    int lire_une_liste_de_valeurs(int t[])
      { int i;
        for (i=0;lire_une_valeur(&t[i]);i++)
          ;
        return (i);
      }
     
    int lire_une_valeur(int *v)
      { scanf("%d",v);
        return(*v!=-1);
      }
     
    int min(int t[],int n)
      { int m,i;
        for (m=t[0],i=1;i<n;i++)
        { if (m>t[i])
            m=t[i];
        }
        return(m);
     
      }
     
    int max(int t[],int n)
      { int m,i;
        for (m=t[0],i=1;i<n;i++)
        { if (m<t[i])
            m=t[i];
        }
        return(m);
     
      }
     
     
     
    float moyenne(int t[],int n)
      { int i ; float s ;
        for (s=0. , i=0 ; i<n ; i++)
         s+=t[i];
        return (s/n);
      }
     
    float variance (int t[] , int n , float m)
      { int s,i;
        for (s=0 , i=0; i<n ; i++)
         s+=(t[i]-m)*(t[i]-m);
        return (s/n);
      }
     
    int nbre_inf_ala_moy (int t[],int n ,float m)
      { int i,c=0;
        for (i=0;i<n;i++)
        { if (t[i]<m)
            c++;
        }
        return(c);
     
      }
     
    int nbre_sup_ala_moy (int t[],int n ,float m)
      { int i,c=0;
        for (i=0;i<n;i++)
        { if (t[i]>m)
            c++;
        }
        return(c);
      }
    int intersection(int t1[],int t2[],int t3[],int t4[] ,int n)
      { int i , j , s , f ;
        for (i=0 ; i<n ; i++)
          {f=t1[i];
           for (j=0 ; j<n ; j++)
             {for (s=0 ; s<n ; s++)
                {if (f==t2[j] && f==t3[s])
                  t4[i]=f;
     
                }
             }
     
          }
        return t4;
      }
     
     
    void main()
    { int t[1000], t1[1000] ,t2[1000],t3[1000],t4[1000] , n , s;
      float m ;
      for ( s =0 ; s<3 ; s++ )
      { n = lire_une_liste_de_valeurs(t);
        printf("le minimum des valeurs est %d \n", min(t,n));
        printf("le maximum des valeurs est %d \n" , max(t,n));
        m=moyenne(t,n);
        printf("la moyenne des valeurs est %10.2f \n", moyenne(t,n));
        printf("la variance est %10.2f \n",variance(t,n,m));
        printf("Le nombre de valeurs inferieurs à la moyenne est %d \n",nbre_inf_ala_moy(t,n,m));
        printf("le nombre de valeurs superieurs à la moyenne est %d \n",nbre_sup_ala_moy(t,n,m));
      }
      printf("l'intersection des listes de valeurs est %d ",intersection(t1,t2,t3,t4,n));
     
     
     
    }

  7. #7
    Expert éminent
    Homme Profil pro
    Ingénieur développement matériel électronique
    Inscrit en
    Décembre 2015
    Messages
    1 565
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement matériel électronique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Décembre 2015
    Messages : 1 565
    Points : 7 648
    Points
    7 648
    Par défaut
    Bonjour,

    Le calcul de la variance ne fonctionnera pas si s a le type int.

    Dans le main(), la boucle va remplir 3 fois le même tableau t[] et la même variable n. A la fin on n'aura pas t1[], t2[] et t3[] et chacun doit avoir sa propre taille n1, n2 et n3. Il faut soit trouver un moyen d'indexer directement l'accès aux ti[] et ni, soit de transférer les données dans leur bonne destination à la fin de chaque itération.

    Quant à la fonction int intersection(int t1[],int n1,int t2[],int n2,int t3[],int n3,t4[]).
    Si on suppose que les valeurs saisies pour chaque table sont bien distinctes, la méthode est correcte. Mais t4[] ne doit pas être remplie avec l'indice i qui indexe les éléments de t1[] mais avec son propre indice de remplissage. Et la fonction doit retourner non pas le tableau t4 mais le nombre d'éléments mis dans t4[].

    Et pour la réunion, tu peux commencer par copier tout le tableau t1[] dans t4[] puis ajouter des éléments de t2[] et de t3[] à condition qu'il ne soient pas déjà dans t4[].

    Ecrire une fonction qui affiche un tableau te permettrait de voir le résultats de tes fonctions intersection() et reunion().

  8. #8
    Nouveau Candidat au Club
    Femme Profil pro
    Chercheur en informatique
    Inscrit en
    Juillet 2017
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Juillet 2017
    Messages : 5
    Points : 0
    Points
    0
    Par défaut
    bonjour , j'ai pris en compte ce que vous avez dit et ça ce que j'ai fait , je cherche comment corriger mes fautes

    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
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    #include <stdio.h>
     
    int lire_une_liste_de_valeurs(int t[])
      { int i;
        for (i=0;lire_une_valeur(&t[i]);i++)
          ;
        return (i);
      }
     
    int lire_une_valeur(int *v)
      { scanf("%d",v);
        return(*v!=-1);
      }
     
    int min(int t[],int n)
      { int m,i;
        for (m=t[0],i=1;i<n;i++)
        { if (m>t[i])
            m=t[i];
        }
        return(m);
     
      }
     
    int max(int t[],int n)
      { int m,i;
        for (m=t[0],i=1;i<n;i++)
        { if (m<t[i])
            m=t[i];
        }
        return(m);
     
      }
     
     
     
    float moyenne(int t[],int n)
      { int i ; float s ;
        for (s=0. , i=0 ; i<n ; i++)
         s+=t[i];
        return (s/n);
      }
     
    float variance (int t[] , int n , float m)
      { int s,i;
        for (s=0 , i=0; i<n ; i++)
         s+=(t[i]-m)*(t[i]-m);
        return (s/n);
      }
     
    int nbre_inf_ala_moy (int t[],int n ,float m)
      { int i,c=0;
        for (i=0;i<n;i++)
        { if (t[i]<m)
            c++;
        }
        return(c);
     
      }
     
    int nbre_sup_ala_moy (int t[],int n ,float m)
      { int i,c=0;
        for (i=0;i<n;i++)
        { if (t[i]>m)
            c++;
        }
        return(c);
      }
    int valeurs_communs(int t1[],int t2[],int t3[],int t4[] ,int n1,int n2 , int n3)
      { int i , j , s , f ,r;
     
         for (i=0 ; i<n1 ; i++)
           {f=t1[i];
             for (j=0 ; j<n2 ; j++)
              {for (s=0 ; s<n3 ; s++)
                 {for (r=0;f==t2[j] && f==t3[s];r++)
                    t4[r]=f;
                 }
              }
           }
     
     
     
         return r;
      }
     
    int intersection(int t4[], int r)
      { int i ;
        for (i=0;i<r;i++)
          printf("%d",t4[i]);
     
     
      }
     
    void main()
    {   int t[1000], t1[1000] ,t2[1000],t3[1000],t4[1000] , n1,n2,n3,r ;
        float m ;
     
        n1 = lire_une_liste_de_valeurs(t1);
        printf("le minimum des valeurs est %d \n", min(t1,n1));
        printf("le maximum des valeurs est %d \n" , max(t1,n1));
        m=moyenne(t1,n1);
        printf("la moyenne des valeurs est %10.2f \n", moyenne(t1,n1));
        printf("la variance est %10.2f \n",variance(t1,n1,m));
        printf("Le nombre de valeurs inferieurs à la moyenne est %d \n",nbre_inf_ala_moy(t1,n1,m));
        printf("le nombre de valeurs superieurs à la moyenne est %d \n",nbre_sup_ala_moy(t1,n1,m));
     
        n2 = lire_une_liste_de_valeurs(t2);
        printf("le minimum des valeurs est %d \n", min(t2,n2));
        printf("le maximum des valeurs est %d \n" , max(t2,n2));
        m=moyenne(t2,n2);
        printf("la moyenne des valeurs est %10.2f \n", moyenne(t2,n2));
        printf("la variance est %10.2f \n",variance(t2,n2,m));
        printf("Le nombre de valeurs inferieurs à la moyenne est %d \n",nbre_inf_ala_moy(t2,n2,m));
        printf("le nombre de valeurs superieurs à la moyenne est %d \n",nbre_sup_ala_moy(t2,n2,m));
     
        n3 = lire_une_liste_de_valeurs(t3);
        printf("le minimum des valeurs est %d \n", min(t3,n3));
        printf("le maximum des valeurs est %d \n" , max(t3,n3));
        m=moyenne(t3,n3);
        printf("la moyenne des valeurs est %10.2f \n", moyenne(t3,n3));
        printf("la variance est %10.2f \n",variance(t3,n3,m));
        printf("Le nombre de valeurs inferieurs à la moyenne est %d \n",nbre_inf_ala_moy(t3,n3,m));
        printf("le nombre de valeurs superieurs à la moyenne est %d \n",nbre_sup_ala_moy(t3,n3,m));
     
     
        r=valeurs_communs(t1,t2,t3,t4,n1,n2,n3);
        printf("l'intersection des listes de valeurs est %d ",intersection(t4,r));

  9. #9
    Expert éminent
    Homme Profil pro
    Ingénieur développement matériel électronique
    Inscrit en
    Décembre 2015
    Messages
    1 565
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement matériel électronique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Décembre 2015
    Messages : 1 565
    Points : 7 648
    Points
    7 648
    Par défaut
    Bonjour,

    I. Le calcul de la variance fonctionne toujours pas.

    II. Dans le main(), tu as ôté la boucle pour remplir les 3 tableaux mais dupliquer des traitements n'est pas une solution informatique. Tu aurais pu garder la boucle et utiliser les bonnes données dedans ou bien créer une fonction appelée 3 fois avec les bons paramètres.

    III. La fonction int intersection(int t1[],int t2[],int t3[],t4[],int n1,int n2,int n3).
    L'indice r qui indexe les éléments de t4[] n'est pas du tout rempli correctement. Il ne faut pas de boucle for sur r. rcommence à zéro et est tout simplement incrémenté dès que l'on a inséré une nouvelle valeur dans t4[]. Et tu as bien corrigé : la fonction doit retourner non pas le tableau t4 mais le nombre d'éléments mis dans t4[], c'est bien la valeur de r.

    IV. Pour la réunion ?

    V. Ecrire une fonction qui affiche un tableau te permettrait de voir le résultats de tes fonctions intersection() et reunion(). Tu l'as faite, mais la fonction devrait s'appeler afficher() et ne peut pas être utilisée à l'intérieur d'un printf(), il faut l'appeler après.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
        printf( "l'intersection des listes de valeurs est : " );
        afficher( t4 , r );
        printf( "\n" );
    VI. Essaie de bien comprendre, de bien te relire et surtout pratique tes corrections pour voir ce qui se passe. C'est en essayant que l'on s'améliore. On ne pourra pas tout trouver pour toi.

    Cordialement, Dalfab.

  10. #10
    Nouveau Candidat au Club
    Femme Profil pro
    Chercheur en informatique
    Inscrit en
    Juillet 2017
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Juillet 2017
    Messages : 5
    Points : 0
    Points
    0
    Par défaut
    Bonjour , j'ai réussi à faire la fonction intersection et la fonction afficher qui s'execute trés bien
    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
    int intersection (int t1[],int t2[],int t3[],int t4[] ,int n1,int n2 , int n3)
      { int i , j , s , f ,r;
         r=0;
         for (i=0 ; i<n1 ; i++)
           {f=t1[i];
            for (j=0 ; j<n2 ; j++)
              {for (s=0 ; s<n3 ; s++)
                 if ( f==t2[j] && f==t3[s] )
                    {t4[r]=f;
                     r++;
                    }
              }
           }
     
     
     
         return r;
      }
     
    void afficher_intersection(int t4[], int r)
      { int i ;
        for (i=0;i<r;i++)
          printf("%d",t4[i]);
      }
    j'ai essayé de faire la fonction union1 et la la fonction afficher_union mais ils ne donnent pas des resultats correctes lors de l'execution

    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
    int union1(int t1[],int t2[],int t3[],int t4[],int n1,int n2,int n3,int r)
    { int i,j,f,s;
     
      for (i=0,s=0;s<r && t4[s]!=t1[i] && i<n1;s++)
       { r++;
         t4[r]=t1[i];
         i++;
       }
     
       for (j=0,s=0;s<r && t4[s]!=t2[j] && j<n2 ; s++)
       { r++;
         t4[r]=t2[j];
         j++;
       }
     
       for (f=0,s=0;s<r && t4[s]!=t3[f] && f<n3 ; s++)
       { r++;
         t4[r]=t3[f];
         f++;
       }
     
       return(r);
     
     }
     
     void afficher_union(int t4[], int q)
     { int i;
       for (i=0;i<q;i++)
         printf("%d",t4[i]);
     }

  11. #11
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 689
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 689
    Points : 30 983
    Points
    30 983
    Billets dans le blog
    1
    Par défaut
    Bonjour
    Citation Envoyé par ferdaous120 Voir le message
    Bonjour , j'ai réussi à faire la fonction intersection
    Oui enfin ta variable "f" elle ne sert pas à grand chose dans cette fonction. De plus, le principal souci de ton algo, c'est que, outre sa complexité (si t1, t2 et t3 ont chacun 1000 éléments alors tu fais 1milliard de comparaisons) si t1 et t2 contiennent par exemple "12" et que t3 contient 3 fois "12" alors tu auras 3 fois "12" dans t4.

    Citation Envoyé par ferdaous120 Voir le message
    j'ai essayé de faire la fonction union1 et la la fonction afficher_union mais ils ne donnent pas des resultats correctes lors de l'execution
    Ton union n'est pas bonne parce que tu dois, pour chaque nouveau nombre, vérifier qu'il n'est pas déjà présent dans t4 (une union c'est le contenu des listes sans les doublons). Or tu ne testes à chaque fois qu'un élément de t4

    Toutefois, une union ça peut aussi être vu comme t1 + t2 + t3 - 2 * intersection(t1, t2, t3). Or tu as fait l'intersection. Donc moi je te conseillerais de t'en servir dans l'algo suivant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    créer tX contenant l'intersection de t1, t2 et t3
    pour chaque élément de t1, faire
        si élément pas dans tX alors rajouter élément dans t4
    fin pour
    pareil avec t2, t3, t4 (ce serait peut-être utile de faire une fonction dédiée à ce travail)
    et enfin tu rajoutes le contenu de tX dans t4
    De plus, as-tu remarqué que "afficher_intersection" et "afficher_union" c'est grosso-modo la même chose, à savoir afficher un tableau ???
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

Discussions similaires

  1. probleme sur un programme en langage c
    Par haddad dans le forum Débuter
    Réponses: 24
    Dernier message: 17/12/2007, 08h36
  2. programmation delphi langage pascal:lien de parenté
    Par christt6789 dans le forum Delphi
    Réponses: 2
    Dernier message: 23/05/2007, 15h48
  3. Réponses: 13
    Dernier message: 02/01/2006, 11h08
  4. programme en langage c
    Par nivine dans le forum C
    Réponses: 18
    Dernier message: 08/10/2005, 10h34
  5. Programme en langage c et asm pour PowerPC
    Par punkybreizh dans le forum Autres architectures
    Réponses: 4
    Dernier message: 07/04/2005, 13h58

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