82
lab6/16.cpp
Normal file
82
lab6/16.cpp
Normal file
@@ -0,0 +1,82 @@
|
||||
#include <iostream>
|
||||
using namespace std;
|
||||
|
||||
class Book {
|
||||
private:
|
||||
char name[50];
|
||||
uint id;
|
||||
|
||||
public:
|
||||
void getData();
|
||||
void putData();
|
||||
};
|
||||
|
||||
void Book::getData() {
|
||||
cout << "Name of book: ";
|
||||
cin >> name;
|
||||
cout << "ID of book: ";
|
||||
cin >> id;
|
||||
}
|
||||
|
||||
void Book::putData() {
|
||||
cout << "Name of book: " << name << endl << "ID of book: " << id << endl;
|
||||
}
|
||||
|
||||
class Authorities : public Book {
|
||||
private:
|
||||
char author[50];
|
||||
char publisher[50];
|
||||
|
||||
public:
|
||||
void getData();
|
||||
void putData();
|
||||
};
|
||||
|
||||
void Authorities::getData() {
|
||||
cout << "Name of author: ";
|
||||
cin >> author;
|
||||
cout << "Name of publisher: ";
|
||||
cin >> publisher;
|
||||
}
|
||||
|
||||
void Authorities::putData() {
|
||||
cout << "Name of author: " << author << endl
|
||||
<< "Name of publisher: " << publisher << endl;
|
||||
}
|
||||
|
||||
class Publication : public Authorities {
|
||||
private:
|
||||
uint pageCount;
|
||||
uint year;
|
||||
|
||||
public:
|
||||
void getData();
|
||||
void putData();
|
||||
};
|
||||
|
||||
void Publication::getData() {
|
||||
cout << "Number of pages: ";
|
||||
cin >> pageCount;
|
||||
cout << "Year (YYYY): ";
|
||||
cin >> year;
|
||||
}
|
||||
|
||||
void Publication::putData() {
|
||||
cout << "Number of pages: " << pageCount << endl << "Year: " << year << endl;
|
||||
}
|
||||
|
||||
int main() {
|
||||
Publication p[3];
|
||||
|
||||
for (auto &x: p) {
|
||||
x.Book::getData();
|
||||
x.Authorities::getData();
|
||||
x.getData();
|
||||
}
|
||||
|
||||
for (auto &x: p) {
|
||||
x.Book::putData();
|
||||
x.Authorities::putData();
|
||||
x.putData();
|
||||
}
|
||||
}
|
73
lab6/17.cpp
Normal file
73
lab6/17.cpp
Normal file
@@ -0,0 +1,73 @@
|
||||
#include <iostream>
|
||||
#include <math.h>
|
||||
using namespace std;
|
||||
|
||||
class Shape {
|
||||
int stub;
|
||||
|
||||
public:
|
||||
virtual void getData() { cout << "stub"; }
|
||||
|
||||
virtual double area() {
|
||||
cout << "stub";
|
||||
return 0;
|
||||
}
|
||||
};
|
||||
|
||||
class Triangle : public Shape {
|
||||
private:
|
||||
double sides[3];
|
||||
|
||||
public:
|
||||
void getData();
|
||||
double area();
|
||||
};
|
||||
|
||||
void Triangle::getData() {
|
||||
cout << "Enter 3 integers for the sides of triangle: \n";
|
||||
|
||||
for (int i = 0; i < 3; i++)
|
||||
cin >> sides[i];
|
||||
}
|
||||
|
||||
double Triangle::area() {
|
||||
double s = (sides[0] + sides[1] + sides[2]) / 2;
|
||||
|
||||
return sqrt(s * (s - sides[0]) * (s - sides[1]) * (s - sides[2]));
|
||||
}
|
||||
|
||||
class Rectangle : public Shape {
|
||||
private:
|
||||
double l;
|
||||
double b;
|
||||
|
||||
public:
|
||||
void getData();
|
||||
double area();
|
||||
};
|
||||
|
||||
void Rectangle::getData() {
|
||||
cout << "Enter length of rectangle: ";
|
||||
cin >> l;
|
||||
cout << "Enter breadh of rectangle: ";
|
||||
cin >> b;
|
||||
}
|
||||
|
||||
double Rectangle::area() { return l * b; }
|
||||
|
||||
int main() {
|
||||
Shape *s;
|
||||
Triangle t;
|
||||
Rectangle r;
|
||||
|
||||
s = &t;
|
||||
|
||||
s->getData();
|
||||
cout << "Area of the Shape: " << s->area() << endl;
|
||||
|
||||
s = &r;
|
||||
|
||||
s->getData();
|
||||
cout << "Area of the Shape: " << s->area() << endl;
|
||||
|
||||
}
|
59
lab6/18.cpp
Normal file
59
lab6/18.cpp
Normal file
@@ -0,0 +1,59 @@
|
||||
#include <iostream>
|
||||
using namespace std;
|
||||
|
||||
class BasicInfo {
|
||||
private:
|
||||
char name[30];
|
||||
uint enrollment;
|
||||
char gender;
|
||||
|
||||
public:
|
||||
void getData();
|
||||
void putData();
|
||||
};
|
||||
|
||||
void BasicInfo::getData() {
|
||||
cout << "Name: ";
|
||||
cin >> name;
|
||||
cout << "Enrollment: ";
|
||||
cin >> enrollment;
|
||||
cout << "Gender: ";
|
||||
cin >> gender;
|
||||
}
|
||||
void BasicInfo::putData() {
|
||||
cout << "Name: " << name << endl
|
||||
<< "Enrollment: " << enrollment << endl
|
||||
<< "Gender: " << gender << endl;
|
||||
}
|
||||
|
||||
class PhysicalFit : public BasicInfo {
|
||||
uint height;
|
||||
uint weight;
|
||||
|
||||
public:
|
||||
void getData();
|
||||
void putData();
|
||||
};
|
||||
|
||||
void PhysicalFit::getData() {
|
||||
cout << "Weight (in kg): ";
|
||||
cin >> weight;
|
||||
cout << "Height (in cm): ";
|
||||
cin >> height;
|
||||
}
|
||||
|
||||
void PhysicalFit::putData() {
|
||||
cout << "Weight (in kg): " << weight << endl
|
||||
<< "Height (in cm): " << height << endl;
|
||||
}
|
||||
|
||||
int main() {
|
||||
PhysicalFit x;
|
||||
x.BasicInfo::getData();
|
||||
x.getData();
|
||||
|
||||
x.BasicInfo::putData();
|
||||
x.putData();
|
||||
|
||||
return 0;
|
||||
}
|
295
lab6/file.org
Normal file
295
lab6/file.org
Normal file
@@ -0,0 +1,295 @@
|
||||
* Create class first with data members book no, book name and member function getdata and putdata. Create a class second with data members author name ,publisher and members getdata and showdata. Derive a class third from first and second with data member no of pages and year of publication. Display all these information using an array of objects of third class.
|
||||
|
||||
#+ATTR_LATEX: :options frame=single,breaklines=true
|
||||
#+begin_src cpp :tangle 16.cpp :wrap src text
|
||||
#include <iostream>
|
||||
using namespace std;
|
||||
|
||||
class Book {
|
||||
private:
|
||||
char name[50];
|
||||
uint id;
|
||||
|
||||
public:
|
||||
void getData();
|
||||
void putData();
|
||||
};
|
||||
|
||||
void Book::getData() {
|
||||
cout << "Name of book: ";
|
||||
cin >> name;
|
||||
cout << "ID of book: ";
|
||||
cin >> id;
|
||||
}
|
||||
|
||||
void Book::putData() {
|
||||
cout << "Name of book: " << name << endl << "ID of book: " << id << endl;
|
||||
}
|
||||
|
||||
class Authorities : public Book {
|
||||
private:
|
||||
char author[50];
|
||||
char publisher[50];
|
||||
|
||||
public:
|
||||
void getData();
|
||||
void putData();
|
||||
};
|
||||
|
||||
void Authorities::getData() {
|
||||
cout << "Name of author: ";
|
||||
cin >> author;
|
||||
cout << "Name of publisher: ";
|
||||
cin >> publisher;
|
||||
}
|
||||
|
||||
void Authorities::putData() {
|
||||
cout << "Name of author: " << author << endl
|
||||
<< "Name of publisher: " << publisher << endl;
|
||||
}
|
||||
|
||||
class Publication : public Authorities {
|
||||
private:
|
||||
uint pageCount;
|
||||
uint year;
|
||||
|
||||
public:
|
||||
void getData();
|
||||
void putData();
|
||||
};
|
||||
|
||||
void Publication::getData() {
|
||||
cout << "Number of pages: ";
|
||||
cin >> pageCount;
|
||||
cout << "Year (YYYY): ";
|
||||
cin >> year;
|
||||
}
|
||||
|
||||
void Publication::putData() {
|
||||
cout << "Number of pages: " << pageCount << endl << "Year: " << year << endl;
|
||||
}
|
||||
|
||||
int main() {
|
||||
Publication p[3];
|
||||
|
||||
for (auto &x: p) {
|
||||
x.Book::getData();
|
||||
x.Authorities::getData();
|
||||
x.getData();
|
||||
}
|
||||
|
||||
for (auto &x: p) {
|
||||
x.Book::putData();
|
||||
x.Authorities::putData();
|
||||
x.putData();
|
||||
}
|
||||
}
|
||||
#+end_src
|
||||
|
||||
#+begin_src
|
||||
ID of book: 4
|
||||
Name of author: a.
|
||||
Name of publisher: a.
|
||||
Number of pages: 4
|
||||
Year (YYYY): 4044
|
||||
Name of book: sahi
|
||||
ID of book: 5
|
||||
Name of author: baat
|
||||
Name of publisher: hai
|
||||
Number of pages: 555555
|
||||
Year (YYYY): 192
|
||||
Name of book: how
|
||||
ID of book: 349234
|
||||
Name of author: ok
|
||||
Name of publisher: test
|
||||
Number of pages: 99991293
|
||||
Year (YYYY): 2022
|
||||
Name of book: Allu
|
||||
ID of book: 4
|
||||
Name of author: a.
|
||||
Name of publisher: a.
|
||||
Number of pages: 4
|
||||
Year: 4044
|
||||
Name of book: sahi
|
||||
ID of book: 5
|
||||
Name of author: baat
|
||||
Name of publisher: hai
|
||||
Number of pages: 555555
|
||||
Year: 192
|
||||
Name of book: how
|
||||
ID of book: 349234
|
||||
Name of author: ok
|
||||
Name of publisher: test
|
||||
Number of pages: 99991293
|
||||
Year: 2022
|
||||
#+end_src
|
||||
#+LATEX: \clearpage
|
||||
|
||||
* Create a base class called SHAPE. Use this class to store two double type values. Derive two specific classes called TRIANGLE and RECTANGLE from the base class. Add to the base class, a member function getdata to initialize base class data members and another member function display to compute and display the area of figures. Make display a virtual function and redefine this function in the derived classes to suit their requirements. Using these three classes design a program that will accept driven of a TRIANGLE or RECTANGLE interactively and display the area.
|
||||
|
||||
#+ATTR_LATEX: :options frame=single,breaklines=true
|
||||
#+begin_src cpp :tangle 17.cpp :results output :wrap src text
|
||||
#include <iostream>
|
||||
#include <math.h>
|
||||
using namespace std;
|
||||
|
||||
class Shape {
|
||||
int stub;
|
||||
|
||||
public:
|
||||
virtual void getData() { cout << "stub"; }
|
||||
|
||||
virtual double area() {
|
||||
cout << "stub";
|
||||
return 0;
|
||||
}
|
||||
};
|
||||
|
||||
class Triangle : public Shape {
|
||||
private:
|
||||
double sides[3];
|
||||
|
||||
public:
|
||||
void getData();
|
||||
double area();
|
||||
};
|
||||
|
||||
void Triangle::getData() {
|
||||
cout << "Enter 3 integers for the sides of triangle: \n";
|
||||
|
||||
for (int i = 0; i < 3; i++)
|
||||
cin >> sides[i];
|
||||
}
|
||||
|
||||
double Triangle::area() {
|
||||
double s = (sides[0] + sides[1] + sides[2]) / 2;
|
||||
|
||||
return sqrt(s * (s - sides[0]) * (s - sides[1]) * (s - sides[2]));
|
||||
}
|
||||
|
||||
class Rectangle : public Shape {
|
||||
private:
|
||||
double l;
|
||||
double b;
|
||||
|
||||
public:
|
||||
void getData();
|
||||
double area();
|
||||
};
|
||||
|
||||
void Rectangle::getData() {
|
||||
cout << "Enter length of rectangle: ";
|
||||
cin >> l;
|
||||
cout << "Enter breadh of rectangle: ";
|
||||
cin >> b;
|
||||
}
|
||||
|
||||
double Rectangle::area() { return l * b; }
|
||||
|
||||
int main() {
|
||||
Shape *s;
|
||||
Triangle t;
|
||||
Rectangle r;
|
||||
|
||||
s = &t;
|
||||
|
||||
s->getData();
|
||||
cout << "Area of the Shape: " << s->area() << endl;
|
||||
|
||||
s = &r;
|
||||
|
||||
s->getData();
|
||||
cout << "Area of the Shape: " << s->area() << endl;
|
||||
|
||||
}
|
||||
#+end_src
|
||||
|
||||
#+begin_src
|
||||
Enter 3 integers for the sides of triangle:
|
||||
4
|
||||
4
|
||||
4
|
||||
Area of the Shape: 6.9282
|
||||
Enter length of rectangle: 4
|
||||
Enter breadh of rectangle: 4
|
||||
Area of the Shape: 16
|
||||
#+end_src
|
||||
#+LATEX: \clearpage
|
||||
|
||||
* Create a base class basic_info with data members name ,roll no, gender and two member functions getdata and display. Derive a class physical_fit from basic_info which has data members height and weight and member functions getdata and display. Display all the information using object of derived class.
|
||||
|
||||
#+ATTR_LATEX: :options frame=single,breaklines=true
|
||||
#+begin_src cpp :tangle 18.cpp :results output :wrap src text
|
||||
#include <iostream>
|
||||
using namespace std;
|
||||
|
||||
class BasicInfo {
|
||||
private:
|
||||
char name[30];
|
||||
uint enrollment;
|
||||
char gender;
|
||||
|
||||
public:
|
||||
void getData();
|
||||
void putData();
|
||||
};
|
||||
|
||||
void BasicInfo::getData() {
|
||||
cout << "Name: ";
|
||||
cin >> name;
|
||||
cout << "Enrollment: ";
|
||||
cin >> enrollment;
|
||||
cout << "Gender: ";
|
||||
cin >> gender;
|
||||
}
|
||||
void BasicInfo::putData() {
|
||||
cout << "Name: " << name << endl
|
||||
<< "Enrollment: " << enrollment << endl
|
||||
<< "Gender: " << gender << endl;
|
||||
}
|
||||
|
||||
class PhysicalFit : public BasicInfo {
|
||||
uint height;
|
||||
uint weight;
|
||||
|
||||
public:
|
||||
void getData();
|
||||
void putData();
|
||||
};
|
||||
|
||||
void PhysicalFit::getData() {
|
||||
cout << "Weight (in kg): ";
|
||||
cin >> weight;
|
||||
cout << "Height (in cm): ";
|
||||
cin >> height;
|
||||
}
|
||||
|
||||
void PhysicalFit::putData() {
|
||||
cout << "Weight (in kg): " << weight << endl
|
||||
<< "Height (in cm): " << height << endl;
|
||||
}
|
||||
|
||||
int main() {
|
||||
PhysicalFit x;
|
||||
x.BasicInfo::getData();
|
||||
x.getData();
|
||||
|
||||
x.BasicInfo::putData();
|
||||
x.putData();
|
||||
|
||||
return 0;
|
||||
}
|
||||
#+end_src
|
||||
|
||||
#+begin_src
|
||||
Name: acha
|
||||
Enrollment: 4
|
||||
Gender: f
|
||||
Weight (in kg): 999
|
||||
Height (in cm): 2
|
||||
Name: acha
|
||||
Enrollment: 4
|
||||
Gender: f
|
||||
Weight (in kg): 999
|
||||
Height (in cm): 2
|
||||
#+end_src
|
Reference in New Issue
Block a user