Académique Documents
Professionnel Documents
Culture Documents
h>
#include <stdlib.h>
}
printf("\n");
}
}
elt * lire(liste *L,int i ,int j)
{
elt * p = L->deb;
while((p!=NULL && p->idi <i )|| (p->idi == i && p->idc < j))
{
p=p->suiv;
}
if (p->idi == i && p->idc == j && p->valeur != NULL)
{
return p->valeur;
}
else
{
return NULL;
}
}
void * Modifier(liste * L,int i ,int j,int e)
{
elt * p = L->deb;
while((p!=NULL && p->idi <i )|| (p->idi == i && p->idc < j))
{
p=p->suiv;
}
if(e!=0 && p->valeur != NULL)
{
elt * q = e;
e = p ->valeur;
p->valeur = q;
}
else if ( e!= 0 && p->valeur == NULL)
{
elt * q = e;
e = p->valeur;
p->valeur = q;
}
else if(e == 0 && p->valeur != NULL)
{
elt *q = e;
e = p ->valeur;
p->valeur = q;
}
else if(e == 0 && p->valeur == NULL)
{
elt *q = e;
e = p->valeur;
p->valeur = e;
}
}
void * supprimervaleur(liste * L ,int e)
{
elt * p = L->deb;
while( p != NULL && p->valeur != e )
{
p = p->suiv;
if(p->valeur == e)
{
p->valeur = NULL;
p = p->suiv;
}
}
void * supprimerindice(liste *L,int i ,int j)
{
elt * p = L ->deb;
while( p!= NULL && p->idi<i || (p->idi == i && p->idc < j))
{
p = p->suiv;
if ( p->idi == i && p->idc == j)
{
p->valeur = NULL;
}
}
}
}*/
int main()
{
liste * L = NULL;
liste * H = NULL;
liste * l = NULL;
int n = 2;
int p = 2;
int c;
int e;
int a;
inserer(&L,0,0,1);
inserer(&L,0,1,14);
inserer(&L,1,0,8);
inserer(&L,1,1,7);
inserer(&H,0,0,4);
inserer(&H,0,1,10);
inserer(&H,1,0,5);
inserer(&H,1,1,2);
//l = additionner(&L,&H);
//afficher(&l,n,p);
afficher2(&L,&H,n,p);
/*inserer(&L,1,1,3);
inserer(&L,2,2,5);
inserer(&L,3,3,7);
inserer(&L,0,2,7);
inserer(&L,1,3,7);*/
//a = lire(&L,3,1);
//printf("la valeur lue est : %d\t ", a);
//printf("\nvoici votre Matrice creuse avant modification : \n");
//afficher(&H,n,p);
//c = comptage(&L);
//printf("\n%d\t ", c);
//supprimervaleur(&L,7);
//afficher(&L,n,p);
/*Modifier(&L,3,3,85);
Modifier(&L,0,2,90);
Modifier(&L,3,1,15);
a = lire(&L,3,1);
printf("\nla valeur lue est : %d\t ", a);
printf("\napres modification :\n");
afficher(&L,n,p);*/
return 0;
}