1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
|
#include <stdlib.h>
#include <stdio.h>
int *sommet, // Sommet d'un tableau de N éléments
*tab ; // Milieu du tableau ci-dessus
int count1,count2;
void main(void)
{ int i ;
sommet = (int*)malloc((1+(2*100))*sizeof(int)) ;
if(sommet==NULL)
{
printf("Erreur allocation\n") ;
exit(0) ;
}
else tab = sommet+100 ; // On pointe au milieu
for(i=-100; i<=100; i++) // Init avec index négatif
{
tab[i] = i ;
printf("tab[%d]=%d # \n",i,tab[i]);
}
count1=0;
count2=0;
printf("Nombre d'elements a gauche de 0\n");
for(i=-100;i<0;i++)
{
count1++;
}
printf("Nombre d'elements a droite de 0\n");
for(i=1;i<101;i++)
{
count2++;
}
if(count2==count1)
printf("Tableau equilibre \n");
tab[-100]=1;
tab[100]=1;
//tab[101]=1;
//tab[-101]=2;
free(sommet) ; // Libération de la mémoire
} |