You are on page 1of 5

Appendix

#include <iostream>
#include <iomanip>
using namespace std;
struct mytime {
int hours;
int minutes;
int seconds;
void print () {
cout <<setfill('0') << setw(2) << hours << ":" << setw(2)<<minutes << ":" << setw(2)<< seconds
<<endl ; }
mytime add (mytime addme) {
mytime sum ;
sum.seconds = (seconds + addme.seconds )%60;
sum.minutes = ((minutes + addme.minutes)+(seconds+addme.seconds)/60)%60;
sum.hours = hours + addme.hours +( minutes + addme.minutes + (seconds +
addme.seconds)/60)/60 ;
return sum ; }
mytime sub (mytime subme) {
mytime sub ;
if ( seconds < subme.seconds ) {
seconds = seconds+60 ;
minutes = minutes - 1 ;
sub.seconds = (seconds - subme.seconds );

if (minutes < subme.minutes) {


minutes = minutes + 60 ;
hours = hours - 1 ;
sub.minutes = minutes - subme.minutes ; }
else if (minutes > sub.minutes) {
sub.minutes = minutes - subme.minutes ; }
sub.hours = hours - subme.hours ; }
else {
sub.seconds = (seconds - subme.seconds );

if (minutes < subme.minutes) {


minutes = minutes + 60 ;
hours = hours - 1 ;
sub.minutes = minutes - subme.minutes ; }
else {
sub.minutes = minutes - subme.minutes ; }
sub.hours = hours - subme.hours ; }
return sub ; } };
struct mycomplex {
double real;
double imaginary;
void print () {
if (imaginary < 0)
cout << real << " " <<imaginary << "j" <<endl ;
else
cout << real << "+" <<imaginary << "j" <<endl ; }
mycomplex add (mycomplex c1 , mycomplex c2) {
mycomplex sum;
sum.real = c1.real+c2.real;
sum.imaginary= c2.imaginary+c1.imaginary;
return sum; }
mycomplex sub (mycomplex c1 , mycomplex c2) {
mycomplex sub;
sub.real = c1.real-c2.real;
sub.imaginary= c1.imaginary-c2.imaginary;
return sub; }
mycomplex mul (mycomplex c1 , mycomplex c2)
{ mycomplex mul;
mul.real = (c1.real*c2.real) - (c1.imaginary*c2.imaginary);
mul.imaginary=(c1.real*c2.imaginary + c1.imaginary*c2.real);
return mul; } };
struct fraction {
int numerator;
int denumerator;
void printmyfraction() {
cout << numerator << "/" << denumerator ; }
fraction add(fraction f1 , fraction f2) // addition {
fraction sum ;
if (f1.denumerator == f2.denumerator) {
sum.numerator = (f1.numerator+f2.numerator);
sum.denumerator = (f2.denumerator) ;
return sum ; }
else if (f1.denumerator != f2.denumerator && f1.denumerator%f2.denumerator != '0') {
sum.denumerator = (f1.denumerator*f2.denumerator) ;
sum.numerator = (f1.numerator*f2.denumerator + f2.numerator*f1.denumerator);
return sum ; }
else if (f1.denumerator% f2.denumerator == '0' || f2.denumerator% f1.denumerator == '0' ) {
if (f1.denumerator < f2.denumerator) {
sum.numerator = f1.numerator*(f2.denumerator/f1.denumerator)+f2.numerator;
sum.denumerator = f2.denumerator ;
return sum ; }
else {
sum.numerator = f2.numerator*(f1.denumerator/f2.denumerator) + f1.numerator ;
sum.denumerator = f1.denumerator;
return sum ; } }
return sum; }
fraction sub(fraction f1 , fraction f2) {
fraction sub ;
if (f1.denumerator == f2.denumerator) {
sub.numerator = (f1.numerator-f2.numerator);
sub.denumerator = (f2.denumerator) ;
return sub ; }
else if (f1.denumerator != f2.denumerator && f1.denumerator%f2.denumerator != '0') {
sub.numerator = (f1.numerator*f2.denumerator - f2.numerator*f1.denumerator);
sub.denumerator = (f1.denumerator*f2.denumerator) ;
return sub ; }
else if (f1.denumerator% f2.denumerator == '0' || f2.denumerator% f1.denumerator == '0' )
{ if (f1.denumerator < f2.denumerator) {
sub.numerator = f1.numerator*(f2.denumerator/f1.denumerator)-f2.numerator;
sub.denumerator = f2.denumerator ;
return sub ; }
else {
sub.numerator = f2.numerator*(f1.denumerator/f2.denumerator) - f1.numerator ;
sub.denumerator = f1.denumerator;
return sub ; } }
return sub; }
fraction mul(fraction f1 , fraction f2) {
fraction mul ;
mul.numerator = f1.numerator*f2.numerator ;
mul.denumerator = f1.denumerator*f2.denumerator ;
return mul ; }
fraction simp ( fraction f1 )
{ fraction simp;
simp.numerator = f1.numerator;
simp.denumerator= f1.denumerator ;
if (simp.numerator == simp.denumerator) {
simp.numerator = simp.denumerator = 1 ;
return simp; }
else if (simp.numerator% simp.denumerator==0 || simp.denumerator % simp.numerator == 0) {
if (simp.numerator < simp.denumerator ) {
simp.denumerator = simp.denumerator/simp.numerator ;
simp.numerator = simp.numerator/simp.numerator ;
return simp ; }
else if (simp.numerator > simp.denumerator ) {
simp.denumerator = simp.denumerator/simp.denumerator ;
simp.numerator = simp.numerator/simp.denumerator ;
return simp ; } }
else if (simp.numerator% simp.denumerator>0 || simp.denumerator % simp.numerator > 0) {
for (int i = 2 ; i < 100 ; i++ ) {
if (simp.numerator%i ==0 && simp.denumerator%i == 0) {
simp.denumerator = simp.denumerator/i ;
simp.numerator = simp.numerator/i;
i--; } }
return simp; }
return simp ; } };
int main()
{
mytime t1,t2,t3;
mycomplex c1,c2,sum,subt,mult;
fraction f1 , f2 ,addfraction , subfraction,multiplyfraction , simplify;
t1.hours = 12;
t1.minutes = 8;
t1.seconds = 45;
t2.hours = 36;
t2.minutes = 50;
t2.seconds = 450;
cout << "Addition of time is: "<< endl;
t1.print();
t2.print() ;
t3 = t1.add(t2) ;
t3.print() ;
cout << "subtraction of time is:" << endl ;
t1.hours = 5;
t1.minutes = 50;
t1.seconds = 50;
t2.hours = 4;
t2.minutes = 51;
t2.seconds = 60;
t1.print();
t2.print() ;
t3 = t1.sub(t2) ;
t3.print() ;
cout << "Enter real number of first complex number: " ;
cin >> c1.real ;
cout << "Enter imaginary number of first complex number: " ;
cin >> c1.imaginary ;
cout << "Enter real number of second complex number: " ;
cin >> c2.real ;
cout << "Enter imaginary number of second complex number: " ;
cin >> c2.imaginary ;
c1.print();
c2.print() ;
sum = sum.add(c1,c2);
cout << "The sum of two complex numbers are:";
sum.print();
subt=subt.sub(c1,c2);
cout << "The subtraction of two complex numbers are:";
subt.print();
mult=mult.mul(c1,c2);
cout << "The product of two complex numbers are:";
mult.print();
cout << "Enter numerator of 1st fraction:" ;
cin >> f1.numerator;
cout << "Enter denumerator of 1st fraction:";
cin >> f1.denumerator ;
cout << "Enter numerator of 2nd fraction :" ;
cin >> f2.numerator;
cout << "Enter denumerator of 2nd fraction :";
cin >> f2.denumerator ;
cout << "\nYour entered fractions are:\nfraction 1 : " ;
f1.printmyfraction();
cout << "\nfraction 2 : " ;
f2.printmyfraction();
cout << endl ;
addfraction =addfraction.add(f1,f2);
cout << "\nThe addition of two fractions is : " ;
addfraction.printmyfraction();
subfraction=subfraction.sub(f1,f2);
cout << "\nThe subtraction of two fractions is : " ;
subfraction.printmyfraction();
multiplyfraction=multiplyfraction.mul(f1,f2);
cout << "\nThe multiplication of two fractions is : " ;
multiplyfraction.printmyfraction();
cout << "\n\nThe simplify form of additive fraction is : " ;
simplify = simplify.simp(addfraction);
simplify.printmyfraction();
cout << "\nThe simplify form of subtractive fraction is : " ;
simplify = simplify.simp(subfraction) ;
simplify.printmyfraction();
cout << "\nThe simplify form of multiplicative fraction is : " ;
simplify = simplify.simp(multiplyfraction) ;
simplify.printmyfraction();
return 0;
}
output of task 1

Output of task 2:

Output of task 3:

Output of task 4:

You might also like