Sei sulla pagina 1di 8

Stegrere elemete pare:

#include <iostream>

using namespace std;

struct nod

int info;

nod*urm;

}*prim;

void adaugare_dr(int x)

nod*a,*q;

a=new nod;

a->info=x;

a->urm=NULL;

if(prim==NULL)

prim=a;

else

q=prim;

while(q->urm!=NULL)

q=q->urm;

q->urm=a;

void afisare()

nod*q;
q=prim;

while(q!=NULL)

cout<<q->info<<" ";

q=q->urm;

int main()

int n,i,x;

float ma;

nod*q,*a,*aux;

cin>>n;

for(i=1; i<=n; i++)

cin>>x;

adaugare_dr(x);

while(prim->info%2==0)

aux=prim;

prim=prim->urm;

delete aux;

if(prim!=NULL)

q=prim;

while(q->urm!=NULL)
if(q->urm->info%2==0)

aux=q->urm;

q->urm=q->urm->urm;

delete aux;

else

q=q->urm;

afisare();

return 0;

Suma elementelor din lista:


#include <iostream>

using namespace std;

struct nod

int info;

nod*urm;

}*prim;

void adaugare_dr(int x)

nod*a,*q;

a=new nod;

a->info=x;

a->urm=NULL;
if(prim==NULL)

prim=a;

else

q=prim;

while(q->urm!=NULL)

q=q->urm;

q->urm=a;

void afisare()

nod*q;

q=prim;

while(q!=NULL)

cout<<q->info<<" ";

q=q->urm;

int suma()

int s=0;

nod*q;

q=prim;

while(q!=NULL)

if(q->info%2==0)

s=s+q->info;
q=q->urm;

return s;

int main()

int n,i,x;

cin>>n;

for(i=1;i<=n;i++)

cin>>x;

adaugare_dr(x);

/*afisare();

cout<<endl;*/

cout<<suma();

return 0;

Inserare media arimetica a doi vecini:


#include <iostream>

using namespace std;

struct nod
{
float info;
nod*urm;
}*prim;

void adaugare_dr(int x)
{
nod*a,*q;
a=new nod;
a->info=x;
a->urm=NULL;
if(prim==NULL)
prim=a;
else
{
q=prim;
while(q->urm!=NULL)
q=q->urm;
q->urm=a;
}
}

void afisare()
{
nod*q;
q=prim;
while(q!=NULL)
{
cout<<q->info<<" ";
q=q->urm;
}
}

int main()
{
int n,i,x;
float ma;
nod*q,*a;
cin>>n;
for(i=1; i<=n; i++)
{
cin>>x;
adaugare_dr(x);

}
q=prim;
while(q->urm!=NULL)
{
ma=(q->info+q->urm->info)/2;
a=new nod;
a->info=ma;
a->urm=q->urm;
q->urm=a;
q=q->urm->urm;
}
afisare();

return 0;
}

Stergere elemente prime:


#include <iostream>

using namespace std;

struct nod
{
int info;
nod*urm;
}*prim;

void adaugare_dr(int x)
{
nod*a,*q;
a=new nod;
a->info=x;
a->urm=NULL;
if(prim==NULL)
prim=a;
else
{
q=prim;
while(q->urm!=NULL)
q=q->urm;
q->urm=a;
}
}

int ver(int i,int n)


{
if(i<=n/2)
if(n%i==0)
return 0;
else
return ver(i+1,n);
else
return 1;
}

void afisare()
{
nod*q;
q=prim;
while(q!=NULL)
{
cout<<q->info<<" ";
q=q->urm;
}
}

int main()
{
int n,i,x;
float ma;
nod*q,*a,*aux;
cin>>n;
for(i=1; i<=n; i++)
{
cin>>x;
adaugare_dr(x);

}
while(ver(2,prim->info)==1)
{
aux=prim;
prim=prim->urm;
delete aux;
}
if(prim!=NULL)
{
q=prim;
while(q->urm!=NULL)
if(ver(2,q->urm->info)==1)
{
aux=q->urm;
q->urm=q->urm->urm;
delete aux;
}
else
q=q->urm;
}
afisare();

return 0;
}

Potrebbero piacerti anche