Isi Koding Alpro Modul 3
Isi Koding Alpro Modul 3
manusia.h
#ifndef MANUSIA_H
#define MANUSIA_H
class Manusia {
public:
virtual void Hello();
};
class Pelajar :
public Manusia {
public:
void Hello();
};
manusia.cpp
class Pegawai :
#include
public "Manusia.h"
Manusia {
#include <iostream.h>
public:
void Manusia::Hello()
void
#include Hello();
"Manusia.h"
{#include <iostream.h>
};
#includecout<<"Hallo
#endif <stdlib.h> ..."<< endl;
} main()
int
void
{ Pelajar::Hello()
{Manusia* m;
cout<<"Hallo, Saya Pelajar ..."<< endl;
int pilihan;
} {
do
void Pegawai::Hello()
cout<<"1: Manusia, 2: Pelajar, 3: Pegawai >> ";
MPoli.cpp
{ cin >> pilihan;
} cout<<"Hallo, Saya Pegawai ...."<<endl;
}while ( pilihan < 1 || pilihan > 3 );
switch ( pilihan )
{
case 1: m = new Manusia; break;
case 2: m = new Pelajar; break;
case 3: m = new Pegawai; break;
}
m->Hello();
delete m;
return 0;
}
2. Buatlah program seperti di bawah ini!
Bentuk2D.h
#ifndef BENTUK2D_H
#define BENTUK2D_H
class Bentuk2D {
public:
#include <iostream.h>
#include "Bentuk2D.h"
Segiempat::Segiempat(float p, float l)
{
panjang = p;
lebar = l;
}
#ifndef SHAPE_H
#define SHAPE_H
class Shape {
public:
point1.h
#include
#endif <iostream.h>
#include "shape.h"
private:
#include
int x, y; }; "point1.h"
point1.cpp
Point::Point(int a, int b) {setPoint(a, b); }
#endif
void Point::setPoint(int a, int b)
{
x=a;
y=b;
}
circle1.h
void Point::print() const
#ifndef CIRCLE1_H
{ cout <<"["<<x<<","<<y<<"]";}
#define CIRCLE1_H
#include "point1.h"
#include <iostream>
private: double radius; };
#include "circle1.h"
#endif
Circle::Circle( double r, int a, int b ) :
void Circle::setRadius( double r ) { radius = r > 0 ? r : 0; }
Point( a, b ) { setRadius( r ); }
double Circle::getRadius() const { return radius; }
double Circle::area() const
Point::print();
cout<< "; Radius = " << radius;
}
Main.cpp
#include <iostream>
#include <stdlib.h>
#include "shape.h"
#include "point1.h"
#include "circle1.h"
int main()
{
Point point(
Shape 7, 11 ); // create
*arrayOfShapes[ 2]; //aarray
Pointof base-class pointers
Circle circle( 3.5, 22, 8 ); // create a Circle
point.printShapeName();//
arrayOfShapes[ static binding
0 ] = &point;
point.print();// static
arrayOfShapes[ 1 ] =binding
&circle;
cout<< '\n';
circle.printShapeName();//
cout<< "Virtual function callsstatic
madebinding
off "
circle.print();//
<< static binding
"base-class pointers\n";
cout<< '\n';
return 0;
}
baseClassPtr->printShapeName();
baseClassPtr->print();