A voir également:
- Tableaux
- Tableaux croisés dynamiques - Guide
- Fusionner deux tableaux excel - Guide
- Les tableaux word - Guide
- Barbara veut calculer automatiquement son budget dans un tableau. citez un des logiciels lui permettant de faire des calculs sur des tableaux de nombres (tableur). - Forum Musique / Radio / Clip
- Fusionner deux tableaux word ✓ - Forum Excel
1 réponse
tout d'abord je pense qu'il serait judicieux d'utiliser une allocation mémoire pour un tableau dynamique pour que cela évite les erreurs d'allocation mémoire
ensuite tu pourrais faire
int i,k,max,tabbis[](malloc),compt,retiens;
//1er boucle permettant repérer la suite de "1"
for(i=0;i<max;i++)
{
if(tab[i]==1)
{
compt=compt+1;
}
else
{
compt=compt-1;
}
//test si il y a 5 "1" puis retiens l'indice ou doit se stocker le "1"
if(compt==5)
{
retiens=i+1;
}
}
//initialisation de l'indice k à 0
k=0;
//boucle permettant de stocker dans un autre tableau les éléments du 1er tableau à partir de la suite des 5 "1"
for(i=retiens;i<max;i++)
{
tabbis[k]=tab[i];
k++;
}
//on stock le "0" la ou tu le souhaitez derrière les 5 "1"
if(retiens!=-1)
{
tab[retiens]=0;
}
//on réinitialise k à 0
k=0;
//et on restock les éléments du tableau à la suite du 0
for(i=retiens+1;i<max+1;i++)
{
tab[i]=tabbis[k];
k++;
}
voila, ce ne doit sûrement pas la solution la plus simple mais je pense que cela marche bien
si tu a des question ou si d'autres personnes aurait vu la solution d'un autre oeil je serais ravis qu'ils me critiques
ensuite tu pourrais faire
int i,k,max,tabbis[](malloc),compt,retiens;
//1er boucle permettant repérer la suite de "1"
for(i=0;i<max;i++)
{
if(tab[i]==1)
{
compt=compt+1;
}
else
{
compt=compt-1;
}
//test si il y a 5 "1" puis retiens l'indice ou doit se stocker le "1"
if(compt==5)
{
retiens=i+1;
}
}
//initialisation de l'indice k à 0
k=0;
//boucle permettant de stocker dans un autre tableau les éléments du 1er tableau à partir de la suite des 5 "1"
for(i=retiens;i<max;i++)
{
tabbis[k]=tab[i];
k++;
}
//on stock le "0" la ou tu le souhaitez derrière les 5 "1"
if(retiens!=-1)
{
tab[retiens]=0;
}
//on réinitialise k à 0
k=0;
//et on restock les éléments du tableau à la suite du 0
for(i=retiens+1;i<max+1;i++)
{
tab[i]=tabbis[k];
k++;
}
voila, ce ne doit sûrement pas la solution la plus simple mais je pense que cela marche bien
si tu a des question ou si d'autres personnes aurait vu la solution d'un autre oeil je serais ravis qu'ils me critiques