Lab 9-14
Lab 9-14
Program#1
#include <iostream.h>
class complex
void edit()
void display()
{(imag>=0)? cout<<"\n\t"<<real<<"+j"<<imag<<endl:cout<<real<<"-"<<-imag<<endl;}
void plus(complex a)
{ complex sum(real+a.real,imag+a.imag);
cout<<"\n\tSum-->\t";sum.display();}
void minus(complex b)
{complex sub(real-b.real,imag-b.imag);
cout<<"\n\tSubtraction-->\t";sub.display();}
void multiply(complex c)
{complex multiply(real*c.real-imag*c.imag,real*c.imag+imag*c.real);
cout<<"\n\tMultiply-->\t";multiply.display();}};
void main ()
c1.edit(); c1.display();
c2.plus(c3);
c3.minus(c1);
c1.multiply(c2);
#include <iostream.h>
class complex
void edit()
void display()
{(imag>=0)? cout<<"\n\t"<<real<<"+j"<<imag<<endl:cout<<real<<"-"<<-imag<<endl;}
void main ()
c1.plus(c2,c3).display();
Output(12-EE-133)
PROGRAM# 2
#include <iostream.h>
class complex
void edit()
void display()
{(imag>=0)? cout<<"\n\t"<<real<<"+j"<<imag<<endl:cout<<real<<"-"<<-imag<<endl;}
void main ()
c1.plus(c2,c3).display();
Output(12-EE-133)
PROGRAM# 3
#include <iostream.h>
#include <conio.h>
class time
time();
time (int,int);
void showtime()
{cout<<endl<<hr<<":"<<min;}};
time::time(){hr=0;min=0;}
{time t;
t.showtime();
time t1(11,10);
t1.showtime();
Output(12-EE-133)
PROGRAM# 4
Sohail Akhtar 12-EE-133 A2
OOP C++ lab#9
#include<iostream.h>
#include<conio.h>
void main()
{int u,t,i,mna[4]={23,0,51,23};
for (u=3;u>=1;u--)
for (i=0;i<u;i++)
if (mna[i]<mna[i+1])
{ t=mna[i];
mna[i]=mna[i+1];
mna[i+1]=t;}
cout<<"sorted values"<<endl;
for (i=0;i<=3;i++)cout<<mna[i]<<endl;getch();}
Output(12-EE-133)
PROGRAM# 5
#include <iostream.h>
class complex
void edit()
void display()
{(imag>=0)? cout<<"\n\t"<<real<<"+j"<<imag<<endl:cout<<real<<"-"<<-imag<<endl;}
void plus(complex a)
{ complex sum(real+a.real,imag+a.imag);
cout<<"\n\tSum-->\t";sum.display();}
void minus(complex b)
{complex sub(real-b.real,imag-b.imag);
cout<<"\n\tSubtraction-->\t";sub.display();}
void multiply(complex c)
{complex multiply(real*c.real-imag*c.imag,real*c.imag+imag*c.real);
cout<<"\n\tMultiply-->\t";multiply.display();}};
void main ()
{ complex a[5]={complex(),complex(4,-5),complex(10,20)};
a[0].edit();a[0].display();
a[1].plus(a[2]);
a[2].minus(a[0]);
a[0].multiply(a[1]);
Output(12-EE-133)
PROGRAM# 6
#include<iostream.h>
#include<conio.h>
class Matrix
private:
int matrix[2][2];
public:
Matrix();
Matrix(int);
void input();
void display();
};
int main ( )
clrscr();
Matrix M,M1(1),M2(2);
M1.display();
M1.input();
M.display();
M1.display();
M2.display();
M1.add(M2);
M1.subtract(M2);
getch();
return 0;
Matrix::Matrix()
matrix[loop2][loop1]=0;
Matrix::Matrix(int)
input();
void Matrix::input()
cin>>matrix[loop5][loop6];
void Matrix::display()
cout<<matrix[loop7][loop8]<<"\t";
cout<<"\n";
void Matrix::add(Matrix a)
a.matrix[loop9][loop10]=matrix[loop9][loop10]+a.matrix[loop9][loop10];
a.display();
void Matrix::subtract(Matrix a)
a.matrix[loop11][loop12]=matrix[loop11][loop12]-a.matrix[loop11]
[loop12];
a.display();
Output(12-EE-133)
PROGRAM# 1
#include <iostream.h>
void main ()
char C[9]={71,111,0x6F,100,'B',0x79,A[7],041,0};
cout<<A<<"\t"<<sizeof(A)<<"\n"<<B<<"\t"<<sizeof(B)<<"\n"<<C<<"\t"<<sizeof(C)<<endl;
cout<<++C[0]<<A[1]<<B[12]<<char(108)<<C[2];}
Output(12-EE-133)
PROGRAM# 2
#include<iostream.h>
#include<conio.h>
#include<dos.h>
void main(void)
int i,j;
gotoxy(30,1);
cout<<x;
for(i=0;x[i]!='\0';i++)
gotoxy(i+30,j);cout<<x[i];}
getch();
Output(12-EE-133)
PROGRAM# 3
#include<iostream.h>
#include<conio.h>
int main ( )
char a[100];
cin>>a;
return 0;}
Output(12-EE-133)
PROGRAM# 4
#include<iostream.h>
#include<conio.h>
#include<string.h>
const int SIZE=100;
class string
{
char str[SIZE];
int length;
public:
string()
{
strcpy(str,"empty");
length=5;
}
string(char array[])
{
length=strlen(array);
if (length>SIZE)
cout<<"\n\n\t\t ERROR! \n\n";
else
strncpy(str,array,length);
str[length+1]='\0';
}
void input()
{
cout<<"\n enter values and use ctrl+z to terminate \n";
cin.getline(str,100,cin.eof());
length=strlen(str);
}
void output()
{
cout<<"output=\n"<<str<<endl;
cout<<"length="<<length<<endl;
}
void concatenate(char array1[])
{
if (strlen(str)+strlen(array1)>SIZE)
cout<<"\n\n\t\t ERROR! \n\n";
else
strcat(str,array1);
}
void compare(char array2[])
{
cout<<endl<<"result of strncmp=\n"<<strncmp(str,array2,5)<<endl;
cout<<endl<<"result of strcmp=\n"<<strcmp(str,array2)<<endl;
}
Sohail Akhtar 12-EE-133 A2
OOP C++ lab#10
};
int main ( )
{
clrscr();
char arr[SIZE]="j"; //by changing the size 'SIZE' of the array
//we can generate the error
for (int loop=0;loop<SIZE;loop++)
arr[loop+1]='\0';
string s,s1(arr);
s.output();
s.input();
s.output();
s.compare(arr);
s.concatenate(arr);
s.output();
getch();
return 0;}
Output(12-EE-133)
PROGRAM# 5
#include <iostream.h>
#include <conio.h>
#include <string.h>
void main (void)
{
int b,c,d,e,f;
char a[5];
cout<<"\n\tEnter string: ";
cin>>a;
c=strlen(a);
d=c;
b=0;
f=0;
do
{
if(a[b]==a[c-1])
e=0;
else
e=1;
b++;
c--;
}while(b<=d,c>=1);
if(e==0)
cout<<"\n\tthe Entered word is palindrome";
else
cout<<"\n\tthe Entered word in not palindrome";
}
Output(12-EE-133)
PROGRAM# 6
#include <iostream.h>
#include <conio.h>
void main ()
{
int a=5; int*pointer=&a;
cout<<"\n\tThe contents of a: "<<a;
cout<<"\n\tThe address of a: "<<&a;
cout<<"\n\tThe contents of a through pointer: "<<*pointer;
cout<<"\n\tThe address of a through pointer: "<<pointer;
cout<<"\n\ttThe adress of pointer: "<<&pointer;}
Output(12-EE-133)
PROGRAM# 1
#include <iostream.h>
#include <conio.h>
void main ()
int i=10,j=20,*p=&i,*q=&j;
cout<<"\n\t&*&i : "<<&*&i;
cout<<"\n\t*&*&j : "<<*&*&j;
cout<<"\n\t**&p : "<<**&p;
Output(12-EE-133)
PROGRAM# 2
#include <iostream.h>
#include <conio.h>
void main()
int a[10]={1,2,3,4,5,6,7,8,9,10};
int *p;
p=a;
cout<<"*(p+2)="<<*(p+2)<<endl;
cout<<"*p+3="<<*p+3<<endl;
cout<<"*(p+3)+5="<<*(p+3)+5<<endl;
cout<<"*(a+4)="<<*(a+4)<<endl;
cout<<"p[5]="<<p[5]<<endl;
cout<<"a[2]+*p="<<a[2]+*p<<endl;
getch();}
Output(12-EE-133)
PROGRAM# 3
#include <iostream.h>
#include <conio.h>
void main()
{int arr[]={2,30,14,35};
int *ptr=arr;
cout<<"++*ptr ="<<++*ptr<<endl;
cout<<"*ptr++ ="<<*ptr++<<endl;
cout<<"(*ptr)++ ="<<(*ptr)++<<endl;
cout<<"*++ptr ="<<*++ptr<<endl;
cout<<"++*ptr++ ="<<++*ptr++<<endl;
getch();
Output(12-EE-133)
PROGRAM# 5
#include<iostream.h>
#include<conio.h>
void swap1(int,int);
int main ( )
int a,b;
cin>>a>>b;
swap1(a,b);
cout<<"a="<<a<<"\t b="<<b<<endl;
swap2(a,b);
cout<<"a="<<a<<"\t b="<<b<<endl;
return 0;
x=x+y;
y=x-y;
x=x-y;
x+=y;
y=x-y;
x=x-y;
Output(12-EE-133)
PROGRAM# 6
#include <iostream.h>
#include <conio.h>
{ x=100,y=200;
void main()
{int b,c;
b=20;c=40;
cout<<"b ="<<b<<endl;
cout<<"c ="<<c<<endl;
func1(b,c);
cout<<"b ="<<b<<endl;
cout<<"c ="<<c<<endl;
getch();}
Output(12-EE-133)
PROGRAM# 7
#include<iostream.h>
#include<conio.h>
int main ( )
int b[5]={10,11,12,13,14};
func(b[0]);
func (a[0]);
return 0;
cout<<x;}
Output(12-EE-133)
Program#8
#include<iostream.h>
#include<conio.h>
int main ( )
int b[5]={10,11,12,13,14};
int *q=b;
func(b);
func (a);
func(q);
func(p);
return 0;
cout<<*++x<<endl;}
Output(12-EE-133)
PROGRAM# 8(a)
#include <iostream.h>
#include <conio.h>
class reference
reference():b(20) {a=10;}
};
void main()
{reference ref;
ref.func1();
ref.func2();
getch();}
Output(12-EE-133)
PROGRAM# 9(a)
#include<iostream.h>
#include<conio.h>
int *fun(int z)
cout<<z<<endl;
z=42;
return &z;
void main()
cout<<*fun(5)<<endl;
int *P=fun(10);
cout<<++*P;
Output(12-EE-133)
PROGRAM# 9(b)
#include<iostream.h>
#include<conio.h>
cout<<z<<endl;
z=42;
return z;
void main()
int a=5;
cout<<fun(a)<<endl;
cout<<a;
Output(12-EE-133)
PROGRAM# 10
#include<iostream.h>
#include<conio.h>
void main()
int a=1,*q=&a,**p=&q;
cout<<++a<<"\t"<<++**p<<"\t"<<++*q<<"\t"<<a<<endl;
cout<<**p<<endl;
cout<<--*q<<endl;
cout<<--a<<endl;
cout<<--**p<<endl;
Output(12-EE-133)
PROGRAM# 1
#include<iostream.h>
#include<conio.h>
int main ( )
int size,total=0,*array;
cin>>size;
array=new int[size];
cin>>array[loop];
total+=array[loop];
delete array;
return 0;
Output(12-EE-133)
PROGRAM# 2
#include<iostream.h>
#include<conio.h>
class dummy
int a,b;
public:
void getdata();
void display();
dummy();
~dummy();
};
int main()
dumdum->getdata();
(*dumdum).display();
dumdum2->getdata();
(*dumdum2).display();
return 0;
void dummy::getdata()
cout<<"\nenter #:";
cin>>a;
cout<<"enter #:";
cin>>b;
void dummy::display()
cout<<"\na="<<a<<"\tb="<<b;
dummy::dummy()
a=0;
b=0;
dummy::~dummy()
{}
Output(12-EE-133)
PROGRAM# 3
#include<iostream.h>
#include<conio.h>
#include<stdlib.h>
#include<string.h>
void sort_words(char*[],int);
void swap(char**,char**);
int main ( )
char *wrd[SIZE],word[MAXWORD];
int n,i;
for (i=0;cin>>word,!cin.eof();i++)
if (i>SIZE)
exit(1);
strcpy(wrd[i],word);
n=i;
sort_words(wrd,n);
for (i=0;i<n;i++)
cout<<wrd[i]<<" ";
getch();
return 0;
void sort_words(char*w[],int n)
int i,j;
for (i=0;i<n;i++)
for (j=i+1;j<n;j++)
if (strcmp(w[i],w[j])>0)
swap(&w[i],&w[j]);
void swap(char**p,char**q)
char*tmp;
tmp=*p;
*p=*q;
*q=tmp;
Output(12-EE-133)
PROGRAM# 4
#include<iostream.h>
#include<conio.h>
#include<string.h>
class String
char *s;
int l;
public:
String()
l=79;
s=new char[79+1];
String(int x)
s=new char[x+1];
l=x;
String(char *st)
l=strlen(st);
s=new char[l+1];
strcpy(s,st);
strcpy(s,str);
l=strlen(str);
void print()
cout<<s<<endl;
int len()
return l;
delete s;
s=new char[a.l+b.l+1];
strcpy(s,a.s);
strcat(s,b.s);
l=a.l+b.l;
~String()
delete s;
};
int main()
char *q="ahmed",*p="bilal";
String S1;
cout<<"\n\t S1\n";
S1.print();
cout<<"S1 length="<<S1.len()<<endl;
cout<<"\n***********************************************************\n";
String S2(20);
cout<<"\n\t S2\n";
S2.print();
cout<<"S2 length="<<S2.len()<<endl;
cout<<"\n***********************************************************\n";
String S3(q);
cout<<"\n\t S3\n";
S3.print();
cout<<"S3 length="<<S3.len()<<endl;
cout<<"\n***********************************************************\n";
S3.Assign(p);
S3.print();
cout<<"S3 length="<<S3.len()<<endl;
cout<<"\n***********************************************************\n";
S1.concat(S2,S3);
S1.print();
cout<<S1.len();
getch();
return 0;
Output(12-EE-133)
PROGRAM# 5
#include<iostream.h>
#include<conio.h>
class A{
protected:int i,j;
public: int k;
A():i(1),j(1){}
public:
B():m(0){}
B(int n):m(n){}
void sum(){
cout<<"sum="<<i+j<<endl;}
main(){
B b(10);
A a(45,65);
a.show();
b.show();
b.showm();
b.k=100;
b.show();
//b.i=10; //error
b.sum();
//a.showm(); //error
getche();
return 0;}
Output(12-EE-133)
PROGRAM# 1
#include<iostream.h>
#include<conio.h>
#include<new.h>
#include<stdlib.h>
class matrix{
int **p,s1,s2;
if(d1<0||d2<0) {
s1=d1;s2=d2;
p=new int*[s1];
ub1=s1-1;ub2=s2-1;}
if(i<0||i>ub1||j<0||j>ub2)
return p[i][j];}
void input(){
cout<<"Enter elements";
for(int k=0;k<s1;k++)
for(int g=0;g<s2;g++)
cin>>p[k][g];
cout<<endl;}
void printValues(){
cout<<"elements of matrix:\n";
for(int k=0;k<s1;k++)
{for(int g=0;g<s2;g++)
cout<<p[k][g]<<" ";
cout<<endl;}
void printAddress(){
for(int k=0;k<s1;k++)
{for(int g=0;g<s2;g++)
cout<<&p[k][g]<<" ";
cout<<endl;}
void printScalarValues(){
cout<<sizeof(p)<<endl;
cout<<sizeof(*p);
cout<<endl;
~matrix(){
delete p;}
};
main(){
matrix a(3,3);
a.input();
a.printValues();
a.printAddress();
a.printScalarValues();
getche();
return 0;}
Output(12-EE-133)
PROGRAM# 2
#include<iostream.h>
#include<conio.h>
#include<new.h>
struct link
int data;
link* next;};
class Linklist
link* first;public:
Linklist(){first=NULL;}
newlink->data=d;
newlink->next=first;
first=newlink;
void display(){
link* current=first;
while(current!=NULL){cout<<current->data<<endl;
current=current->next;}
};
int main(){
Linklist a;
a.additem(25);
a.additem(35);
a.additem(45);
a.additem(55);
a.display();
getche();
Output(12-EE-133)
PROGRAM# 3
#include<iostream.h>
#include<conio.h>
class A{
int x;
protected:int y;
public:
void show(){
class B:public A{
int z;public:
int main(){
A a=A(1,2);
B b(3,4,5);
a.show();
b.show();
b.A::show();
getche();
return 0;}
Output(12-EE-133)
PROGRAM# 4
#include<iostream.h>
#include<conio.h>
class B;
A(int x=0):a(x){}
class B{int b;
public:
{ return i.a+j.b;}
int main(){
A a(5);
B b(6);
getch();
return 0;
Output(12-EE-133)
PROGRAM# 5
#include<iostream.h>
#include<conio.h>
class web{
int x,y;
public:
web():x(0),y(0){}
void operator++(int){
++x;++y;}
void operator++(){
++x;++y;}
return web(x+a.x,y+a.y);}
return web(x-a.x,y-a.y);}
return web(x*a.x,y*a.y);}
return web(x/a.x,y/a.y);}
void show(){
cout<<"x="<<x<<"\ny="<<y<<endl;}
};
web ob1,ob2(2,4),ob3(2,6);
ob3++;
++ob3;
ob1=ob2+ob3;
ob1.show();
ob3=ob1/ob2;
ob3.show();
web ob4(10,20);
ob2=(ob1*ob3)-ob4;
ob2.show();
getche();
return 0;}
Output(12-EE-133)
Sohail Akhtar 12-EE-133 A2
OOP C++ lab#13
PROGRAM# 1
#include <iostream.h>
#include <conio.h>
#include <string.h>
{ argv[0] = "today";
argv[2] = "a";
argv[3] = "very";
argv[4] = "nice";
argv[5] = "day";
arg=6;
getch();
Output(12-EE-133)
PROGRAM# 2(a)
#include <iostream.h>
#include <conio.h>
class B
};
class D: public B
};
void f()
{ B* p=new B;
delete p;
int main()
{ f();
Output(12-EE-133) 1
Output(12-EE-133) 2
PROGRAM# 2(b)
#include <iostream.h>
{protected: int x;
public:
void test()
cout<<"\n\td.x="<<x<<"\n\tB1::x="<<B1::x<<"\n\tB2::x="<<B2::x<<endl;} };
{D d;
d.test();
Output(12-EE-133)
PROGRAM# 3
#include <iostream.h>
#include <string.h>
class base1
base1(char* m) { strcpy(message,m);}
void main()
cout<<"b1::base1= "<<b1.show1()<<endl;
cout<<"b2::base2= "<<b2.show2()<<endl;
cout<<"b2::base1= "<<b2.show1()<<endl;
cout<<"b3::base2= "<<b3.show2()<<endl;
cout<<"b::base3= "<<b.show3()<<endl;
cout<<"b::base2= "<<b.show2()<<endl;
cout<<"b::base1="<<b.show1()<<endl;
Output(12-EE-133)