#include <iostream>
#include <conio.h>
#include <cstdlib>
#include <iomanip>
using namespace std;
void initialize(int [],int ,int );
void print(int [],int );
void addelementfirst(int * & ,int & );
void addelementlast(int * & ,int & );
int *deletefirst(int [] ,int & );
int *deletelast(int [] ,int & );
int main() {
int n;
cout<<"Enter list size:";
cin>>n;
int *a=new int[n];
initialize(a,n,0);
cout<<endl<<"array a:";
print(a,n);
addelementfirst(a,n);
cout<<endl<<"(add first)array a:";
print(a,n);
addelementlast(a,n);
cout<<endl<<"(add last)array a:";
print(a,n);
a=deletefirst(a,n);
cout<<endl<<"(delete first)array a:";
print(a,n);
a=deletelast(a, n ) ;
cout<<endl<<"(delete last)array a:";
print(a,n);
getch();
return 0;
}
void initialize(int a[],int n ,int v)
{
for(int i=0;i<n;i++)
a[i]=v;
}
void print(int a[],int n)
{
cout<<" [";
for(int i=0;i<n;i++)
cout<<setw(3)<<a[i];
cout<<" ]"<<endl;
}
void addelementfirst(int * &a ,int &n )
{ int v;
cout<<"enter number for add to first=";
cin>>v;
int *newa=new int[n+1];
if( newa==NULL){ cout<<"memory allocation error for add element!"; exit(-1);
}
for(int i=0;i<n;i++)
newa[i+1]=a[i];
newa[0]=v;
if(n)
delete []a;
n++;
a=newa;
}
void addelementlast(int * &a ,int &n )
{ int v;
cout<<"enter number for add to last=";
cin>>v;
int *newa=new int[n+1];
if( newa==NULL){ cout<<"memory allocation error for add element!"; exit(-1);
}
for(int i=0;i<n;i++)
newa[i]=a[i];
newa[n]=v;
if(n)
delete []a;
n++;
a=newa;
}
int* deletefirst(int a[] ,int & n )
{
if (n<=1 ) { if(n) delete a; n=0; return NULL; }
int *p=new int[n-1];
if( p==0){ cout<<"memory allocation error for add element!"; exit(-1); }
for(int i=0;i<(n-1) ;i++)
p[i]=a[i+1];
delete []a;
--n;
return p;
}
int *deletelast(int a[] ,int &n )
{
if(n<=1) { if(n) delete a; n=0; a=NULL; exit(-1); }
int *p=new int[n-1];
for(int i=0;i<n-1;i++)
p[i]=a[i];
delete a;
--n;
a=p;
return a;
}
{"html5":"htmlmixed","css":"css","javascript":"javascript","php":"php","python":"python","ruby":"ruby","lua":"text\/x-lua","bash":"text\/x-sh","go":"go","c":"text\/x-csrc","cpp":"text\/x-c++src","diff":"diff","latex":"stex","sql":"sql","xml":"xml","apl":"apl","asterisk":"asterisk","c_loadrunner":"text\/x-csrc","c_mac":"text\/x-csrc","coffeescript":"text\/x-coffeescript","csharp":"text\/x-csharp","d":"d","ecmascript":"javascript","erlang":"erlang","groovy":"text\/x-groovy","haskell":"text\/x-haskell","haxe":"text\/x-haxe","html4strict":"htmlmixed","java":"text\/x-java","java5":"text\/x-java","jquery":"javascript","mirc":"mirc","mysql":"sql","ocaml":"text\/x-ocaml","pascal":"text\/x-pascal","perl":"perl","perl6":"perl","plsql":"sql","properties":"text\/x-properties","q":"text\/x-q","scala":"scala","scheme":"text\/x-scheme","tcl":"text\/x-tcl","vb":"text\/x-vb","verilog":"text\/x-verilog","yaml":"text\/x-yaml","z80":"text\/x-z80"}