Tableau

MirKoRn Messages postés 27 Date d'inscription mardi 17 avril 2007 Statut Membre Dernière intervention 18 octobre 2007 - 19 sept. 2007 à 15:13
MirKoRn Messages postés 27 Date d'inscription mardi 17 avril 2007 Statut Membre Dernière intervention 18 octobre 2007 - 3 oct. 2007 à 14:33
j'ai un petit problème:

je voudrai effacer certaine case d'un tableau d'entier pour ensuite les remplacer par d'autre chiffres mais... je saus pas comment les effacer!??!!??!?!?!?

a part ça mon programme de poker est bientôt fini!!!! YOUPIIII

7 réponses

cs_juju12 Messages postés 966 Date d'inscription samedi 3 avril 2004 Statut Membre Dernière intervention 4 mars 2010 4
19 sept. 2007 à 15:17
Comment ça effacer? Tu peux écrire dessus tout simplement!?
0
cs_sam20 Messages postés 184 Date d'inscription lundi 31 juillet 2006 Statut Membre Dernière intervention 26 mai 2016 3
19 sept. 2007 à 16:49
int Tableau[10];

Tableau[0]=5;
Tableau[1]=10;
//je change
Tableau[0]=0;
0
tibob51 Messages postés 268 Date d'inscription vendredi 30 avril 2004 Statut Membre Dernière intervention 13 mai 2013 2
20 sept. 2007 à 11:11
Salut, tu ne peu pas effacer directement une seule case de ton tableau, l'astuce serai d'y mettre une valeur style 0 ou -1 que ton prog ignora a la lecture, par contre si 0 et -1 sont des valeur que tu utilise il faut que tu recopie ton tableau dans un nouveau tableau de taille n-1,en  ignorant la case que tu veut supprimmer.
ex:

int n=10;

int *tab_original;
int *tab_modifie;
int a_effacer;

tab_original=new int[n];

//initialisation de ton tableau ect...
a_effacer=3;// la 4eme valeur sera supprimée

tab_modifie=new int[n-1];

for (int c=0;c<n;c++)
 if (c = = a_effacer)
  continue;

tab_modifie[c]=tab_original[c]
0
MirKoRn Messages postés 27 Date d'inscription mardi 17 avril 2007 Statut Membre Dernière intervention 18 octobre 2007
21 sept. 2007 à 17:25
sam: j'avait essayer ça mais ça marchai pas.... enfin je vais trouver et je vais essayer tibob, de faire ce que tu m'as dis!!!
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Bug_Bug Messages postés 9 Date d'inscription dimanche 22 juillet 2007 Statut Membre Dernière intervention 2 octobre 2007
2 oct. 2007 à 13:54
I)

Pour supprimer les valeurs que tu veut d'un tableau, tu peut: parcourir ton tableau, et dés que tu trouve la valeur que tu veut supprimer, tu décalle le reste des veleurs du tableau (qui viennent aprés) d'une case vers l'arriére.

1 | 6 | 19 | 5 | 8 | -3 | 99 | ...
On supprimer le valeur qui ce trouve à l'indice 3, càd la valeur 5, On aura:
1 | 6 | 19 | 8 | -3 | 99 | ...

Algo:

Parcourire tableau:
{
   Si c'est la valeur qu'on veut supprimer:
      DecalerAGauche()
   Sinon
      continuer le parcour
}

DecalerAGauche()
{
    parcourire le tablaue à partir de l'indice actuel:
    {
        tab[indiceActuel] := tab[indiceActuel - 1];
     }
  
    Diminuer la taille du tableau;
}

II)
Mais si tu veut selement remplaçer des valeurs qui ce trouve dans ton tableau par d'autre valeurs, là tu le fait dirrectement, y a aucun probléme ! t'as pas desoin d'effacer comme tu le dit...

Fait de ton mieu et poste ton code.
0
Bug_Bug Messages postés 9 Date d'inscription dimanche 22 juillet 2007 Statut Membre Dernière intervention 2 octobre 2007
2 oct. 2007 à 13:57
[auteur/TIBOB51/270145.aspx tibob51] > tab_original=new int[n];
C'est de C++ pas du C.
0
MirKoRn Messages postés 27 Date d'inscription mardi 17 avril 2007 Statut Membre Dernière intervention 18 octobre 2007
3 oct. 2007 à 14:33
en fait ce que j'ai fait avec l'aide d'un pote c'est ça:

void separeTableau(int dep[], int arr[],int n) // fonction qui separe le tableau cartes(de départ) en deux tableaux distincts
{
 for(int j=n; j<5+n; j++)
 {
  arr[j-n]=dep[j];
 }

comme ça c'est plus simple et je complique pas la vie!
0
Rejoignez-nous