Supprimer les valeurs nulles d'un tableau
                    
        
     
             
                    Gengoul94
    
        
    
                    Messages postés
            
                
     
             
            25
        
            
                                    Statut
            Membre
                    
                -
                                     
le père -
        le père -
        Bonjour à tous,
Je suis en 1ère année d'IUT informatique et je dois réaliser un petit programme qui permet de saisir des valeurs dans un tableau puis de supprimer les valeurs négatives. C'est là que je bloque...
Voici ce que j'ai réussi à faire :
Le problème est que je n'arrive pas à arrêter la boucle au bon moment.
En effet, en entrant 14 0 -5 2 0 0 1 -2 j'obtiens :
"Voici vos valeurs nettoyees des valeurs nulles (8) :
14 -5 2 1 -2 0 1 -2"
J'ai fait d'autres tentatives mais rien de concluant...
J'espère donc que vous voudrez bien m'aider ou me donner des pistes :)
Merci d'avance
            
            
                
            
                
    
    
    
        Je suis en 1ère année d'IUT informatique et je dois réaliser un petit programme qui permet de saisir des valeurs dans un tableau puis de supprimer les valeurs négatives. C'est là que je bloque...
Voici ce que j'ai réussi à faire :
#include <iostream>
 
using namespace std;
 
int main()
{
    const float STOP=-999.0;
    const int MAXR=10;
    float tab[MAXR], val;
    int i, j=0, nbVal=0;
    cout << "Entrez un reel " << STOP << " pour finir." << endl;
    cin >> val;
    while (val!=STOP && (nbVal < MAXR))
    {
        tab[nbVal]=val;
        nbVal++;
        cin >> val;
    }
    if (val != STOP)
    {
        cout << "Il n'est pas possible d'enregistrer la derniere valeur saisie (" << val << ")." << endl;
    }
    for (i=0 ; i < nbVal; i++)
    {
        cout << tab[i] << " ";
    }
    for (i=0 ; i < nbVal ; i++)
    {
        if (tab[i]!=0)
        {
            tab[j] = tab[i];
            j = j++;
        }
    }
    cout << endl << "Voici vos valeurs nettoyees des valeurs nulles (" << nbVal << ") :" << endl;
    for (i=0 ; i < nbVal ; i++)
    {
        cout << tab[i] << " ";
    }
    return 0;
}
Le problème est que je n'arrive pas à arrêter la boucle au bon moment.
En effet, en entrant 14 0 -5 2 0 0 1 -2 j'obtiens :
"Voici vos valeurs nettoyees des valeurs nulles (8) :
14 -5 2 1 -2 0 1 -2"
J'ai fait d'autres tentatives mais rien de concluant...
J'espère donc que vous voudrez bien m'aider ou me donner des pistes :)
Merci d'avance
        A voir également:         
- Ecrire un programme qui permet de compacter les éléments du tableau tab. cette opération consiste à supprimer les valeurs nulles du tableau.
- Tableau word - Guide
- Tableau ascii - Guide
- Trier un tableau excel - Guide
- Supprimer rond bleu whatsapp - Guide
- Imprimer un tableau excel - Guide
