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 :

Supprimer des valeurs d'un tableau


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Analyse système
    Inscrit en
    Mai 2013
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Analyse système
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mai 2013
    Messages : 21
    Par défaut Supprimer des valeurs d'un tableau
    Bonjour,
    J'ai le tableau suivant:
    19 5 3 0 0
    20 2 0 0 0
    50 1 1 0 0

    J'aimerais juste supprimer les 0 de façon à ce que ça fasse:
    19 5 3
    20 2
    50 1 1

    Merci Beaucoup
    ps : J'ai vu des routines sur le forum mais ça me parait super compliqué et moi je veux juste enlever les 0 mais garder la même matrice

  2. #2
    Membre Expert
    Avatar de Metalman
    Homme Profil pro
    Enseignant-Chercheur
    Inscrit en
    Juin 2005
    Messages
    1 049
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Enseignant-Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2005
    Messages : 1 049
    Par défaut
    Quelle est la variable contenant cette matrice ?

    Il faut un peu plus de description du conteneur de ta matrice !
    --
    Metalman !

    Attendez 5 mins après mes posts... les EDIT vont vite avec moi...
    Les flags de la vie : gcc -W -Wall -Werror -ansi -pedantic mes_sources.c
    gcc -Wall -Wextra -Werror -std=c99 -pedantic mes_sources.c
    (ANSI retire quelques fonctions comme strdup...)
    L'outil de la vie : valgrind --show-reachable=yes --leak-check=full ./mon_programme
    Et s'assurer que la logique est bonne "aussi" !

    Ma page Developpez.net

  3. #3
    Membre averti
    Homme Profil pro
    Analyse système
    Inscrit en
    Mai 2013
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Analyse système
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mai 2013
    Messages : 21
    Par défaut
    J'ai extrait d'un fichier.txt les valeurs en chaine de caractere, puis j'ai fait strtof:
    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
     
    	float f1, f2, f3,f4,f5;
    			f1 = strtof (tampon, &pEnd);
    			f2 = strtof (pEnd,   &pEnd);
    			f3 = strtof (pEnd,   &pEnd);
    			f4 = strtof (pEnd,   &pEnd);
    			f5 = strtof (pEnd,   NULL );
     
    /*   printf ("%f %f %f", f1 ,f2,f3); */
     
    			float tab[n+50][5];
    			tab[i][0] =f1;
    			tab[i][1] =f2;
    			tab[i][2] =f3;
    			tab[i][3] =f4;
    			tab[i][4] =f5;

  4. #4
    Membre Expert
    Avatar de Metalman
    Homme Profil pro
    Enseignant-Chercheur
    Inscrit en
    Juin 2005
    Messages
    1 049
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Enseignant-Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2005
    Messages : 1 049
    Par défaut
    J'allais écrire une bêtise, je me suis retenu.

    Tu souhaites conserver la matrice avec les valeurs, et seulement ne pas afficher les 0 à l'écran ?
    Et si un 0 se trouve entre 2 valeurs ?
    Par exemple : 42 0 69 0 0
    Doit-il afficher : 42 69 ? Ou 42 0 69 ?

    Ou tu souhaites ne pas stocker du tout les 0 ?... mais dans ce cas, quel est le comportement à adopter ? mettre une autre valeur ?...
    --
    Metalman !

    Attendez 5 mins après mes posts... les EDIT vont vite avec moi...
    Les flags de la vie : gcc -W -Wall -Werror -ansi -pedantic mes_sources.c
    gcc -Wall -Wextra -Werror -std=c99 -pedantic mes_sources.c
    (ANSI retire quelques fonctions comme strdup...)
    L'outil de la vie : valgrind --show-reachable=yes --leak-check=full ./mon_programme
    Et s'assurer que la logique est bonne "aussi" !

    Ma page Developpez.net

  5. #5
    Membre averti
    Homme Profil pro
    Analyse système
    Inscrit en
    Mai 2013
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Analyse système
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mai 2013
    Messages : 21
    Par défaut
    En fait, je veux effectivement enlever les 0 de la matrice
    ex : 42 69 0 --> 42 69
    La situation ou il y a un 0 entre 2 chiffres n'est pas presente dans mon fichier.
    Cependant au cas ou, je voudrais que la case reste vide

    42 | 0 | 69 --> 42 | | 69

    Est il possible?

    Merci

  6. #6
    Inactif  


    Homme Profil pro
    Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Inscrit en
    Décembre 2011
    Messages
    9 026
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Doctorant sécurité informatique — Diplômé master Droit/Économie/Gestion
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2011
    Messages : 9 026
    Par défaut
    @Trax31 :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    float f1, f2, f3,f4,f5;
    Utilise un tableau de float : float tableau[5]; .

    Tu pourras ainsi faire des boucles pour :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    f1 = strtof (tampon, &pEnd);
    			f2 = strtof (pEnd,   &pEnd);
    			f3 = strtof (pEnd,   &pEnd);
    			f4 = strtof (pEnd,   &pEnd);
    			f5 = strtof (pEnd,   NULL );
     
    			float tab[n+50][5];
    			tab[i][0] =f1;
    			tab[i][1] =f2;
    			tab[i][2] =f3;
    			tab[i][3] =f4;
    			tab[i][4] =f5;

  7. #7
    Membre Expert
    Avatar de Metalman
    Homme Profil pro
    Enseignant-Chercheur
    Inscrit en
    Juin 2005
    Messages
    1 049
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Enseignant-Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2005
    Messages : 1 049
    Par défaut
    En fait, tu ne pourras pas supprimer les 0 de la matrice, il doit TOUJOURS y avoir une valeur dans une case (ou au moins une qui sert à définir qu'il n'y a rien).
    Le "vide" n'existe pas.

    Cependant, tu peux juste empêcher leur affichage lorsque tu print.
    Si c'est le cas, il suffit juste de tester si la valeur est différente de 0, si oui : on affiche
    --
    Metalman !

    Attendez 5 mins après mes posts... les EDIT vont vite avec moi...
    Les flags de la vie : gcc -W -Wall -Werror -ansi -pedantic mes_sources.c
    gcc -Wall -Wextra -Werror -std=c99 -pedantic mes_sources.c
    (ANSI retire quelques fonctions comme strdup...)
    L'outil de la vie : valgrind --show-reachable=yes --leak-check=full ./mon_programme
    Et s'assurer que la logique est bonne "aussi" !

    Ma page Developpez.net

Discussions similaires

  1. [WD10] Afficher des valeurs dans un tableau
    Par dj-julio dans le forum WinDev
    Réponses: 4
    Dernier message: 19/03/2014, 11h32
  2. Supprimer des valeurs d'un tableau
    Par rollergirl dans le forum Langage
    Réponses: 16
    Dernier message: 03/09/2010, 22h27
  3. [Tableaux]Ajouter des valeurs dans un tableau
    Par Antoine1183 dans le forum Collection et Stream
    Réponses: 13
    Dernier message: 03/04/2005, 13h41
  4. [VB6] recuperer des valeurs ds un tableau html avec vb!!
    Par leo13 dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 11/12/2004, 13h02
  5. Décaler des valeurs dans un tableau
    Par sh2003 dans le forum Langage
    Réponses: 6
    Dernier message: 20/03/2004, 16h01

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