MirKoRn
Messages postés27Date d'inscriptionmardi 17 avril 2007StatutMembreDernière intervention18 octobre 2007
-
19 sept. 2007 à 15:13
MirKoRn
Messages postés27Date d'inscriptionmardi 17 avril 2007StatutMembreDernière intervention18 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
tibob51
Messages postés268Date d'inscriptionvendredi 30 avril 2004StatutMembreDernière intervention13 mai 20132 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;
Bug_Bug
Messages postés9Date d'inscriptiondimanche 22 juillet 2007StatutMembreDerniè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...
MirKoRn
Messages postés27Date d'inscriptionmardi 17 avril 2007StatutMembreDernière intervention18 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!