Kasus
4.1
#include <iostream>
using namespace std;
/* run this program using the console pauser or add your own
getch, system("pause") or input loop */
class Banding{
friend
istream&operator>>(istream&,Banding&);
public:
Banding(){};
void
bandingkan(){
if(A>B)
cout<<"Bilangan
terbesar = "<<A;
else
cout<<"Bilangan
terbesar = "<<B;
}
private:
int
A,B;
};
istream& operator>>(istream&in, Banding&
bilangan){
cout<<"Bilangan
Pertama =";
in>>bilangan.A;
cout<<"Bilangan
Kedua = ";
in>>bilangan.B;
return
in;
};
int main(int argc, char** argv) {
Banding
bilangan;
cin>>bilangan;
bilangan.bandingkan();
return
0;
}
4.2a
#include <iostream>
using namespace std;
/* run this program using the console pauser or add your own
getch, system("pause") or input loop */
class Banding{
friend
istream& operator>>(istream&,Banding&);
public:
Banding(){};
void
bandingkan(){
if((x>y)&&(x>z))
cout<<"Bilangan
terbesar = "<<x;
else
if((y>x)&&(y>z))
cout<<"Bilangan
terbesar = "<<y;
else
cout<<"Bilangan
terbesar = "<<z;
}
private:
int
x,y,z;
};
istream& operator>>(istream& in, Banding&
bilangan){
cout<<"Bilangan
pertama = ";
in>>bilangan.x;
cout<<"Bilangan
kedua = ";
in>>bilangan.y;
cout<<"Bilangan
ketiga = ";
in>>bilangan.z;
return
in;
};
int main(int argc, char** argv) {
Banding
bilangan;
cin>>bilangan;
bilangan.bandingkan();
return
0;
}
4.2b
#include <iostream>
using namespace std;
class Banding{
friend
istream& operator>>(istream&, Banding&);
public:
Banding(){};
void
bandingkan(){
int
maks = x;
if
(y>maks)maks=y;
if
(z>maks)maks=z;
cout<<"Bilangan
terbesar = "<<maks;
}
private:
int
x,y,z;};
istream&
operator>>(istream&in,Banding&bilangan){
cout<<"Bilangan
pertama = ";
in>>bilangan.x;
cout<<"Bilangan
kedua = ";
in>>bilangan.y;
cout<<"Biangan
ketiga = ";
in>>bilangan.z;
return
in;
};
/* run this program using the console pauser or add your own
getch, system("pause") or input loop */
int main(int argc, char** argv) {
Banding
bilangan;
cin>>bilangan;
bilangan.bandingkan();}
4.3
#include <iostream>
#include <math.h>
#include <conio.h>
using namespace std;
/* run this program using the console pauser or add your own
getch, system("pause") or input loop */
class Akar{
friend
ostream& operator<<(ostream&,Akar&);
friend
istream& operator>>(istream&, Akar&);
public:
Akar();
int
disk(){return B*B-4*A*C;}
float
akar1(){return(-B+sqrt(disk()))/(2*A);}
float
akar2(){return(-B-sqrt(disk()))/(2*A);}
void
hitung_akar();
void
cetak_disk(){cout<<"diskriminan = "<<disk()<<endl;}
void
cetak_akar(){
cout<<"x1
= "<<akar1()<<endl;
cout<<"x2
= "<<akar2()<<endl;
}
private:
int
A,B,C;
float
x1,x2;
};
ostream& operator<<(ostream&out,Akar&
keluaran){
keluaran.cetak_disk();
if(keluaran.disk()>=0)keluaran.cetak_akar();
else
out<<"Akar imajiner";
return
out;
}
istream& operator>>(istream&in,Akar&
masukan){
cout<<"Koefisien
pangkat 2 = ";in>>masukan.A;
cout<<"Koefisien
pangkat 1 = ";in>>masukan.B;
cout<<"Koefisien
pangkat 0 = ";in>>masukan.C;
return
in;
}
Akar::Akar(){
cout<<"Menghitung
akar persamaan kuadrat\n";
}
void Akar::hitung_akar(){
if(A==0){
cout<<"Bukan
pers.kuadrat.\n";
cout<<"Harga
akar = "<<-C/B;
}else{
if(disk()>0){
x1=akar1();
x2=akar2();
}else
if(disk()==0){
x1=akar1();
x2=x1;
}
}
}
int main(int argc, char** argv) {
Akar
kasus;
cin>>kasus;
kasus.hitung_akar();
cout<<kasus;
return
0;
}
4.4
#include <iostream>
using namespace std;
/* run this program using the console pauser or add your own
getch, system("pause") or input loop */
class Nilai{
friend
ostream&operator<<(ostream&,Nilai&);
friend
istream&operator>>(istream&,Nilai&);
public:
Nilai(){};
void
konversikan(){
if((nilai>0)&&(nilai<=20))
nilai_huruf='E';
else
if ((nilai>20)&&(nilai<=40))
nilai_huruf='D';
else
if((nilai>40)&&(nilai<=60))
nilai_huruf='C';
else
if((nilai>60)&&(nilai<=80))
nilai_huruf='B';
else
nilai_huruf='A';
}
private:
int
nilai;
char
nilai_huruf;
};
istream&operator>>(istream&in, Nilai&
masukan){
cout<<"Masukkan
nilai angka = ";
in>>masukan.nilai;
return
in;
};
ostream&operator<<(ostream&out,Nilai&keluaran){
out<<"Nilai
angka = "<<keluaran.nilai<<endl;
out<<"Nilai
huruf = "<<keluaran.nilai_huruf;
}
int main(int argc, char** argv) {
Nilai
angka;
cin>>angka;
angka.konversikan();
cout<<angka;
return
0;
}
4.5
#include <iostream>
using namespace std;
/* run this program using the console pauser or add your own
getch, system("pause") or input loop */
class Kalender{
friend
ostream&operator<<(ostream&,Kalender&);
friend
istream&operator>>(istream&,Kalender&);
public:
Kalender(){};
void
adalah();
private:
int
hari_ke;
char*hari;
};
void Kalender::adalah(){
switch
(hari_ke){
case
1: hari = "Senin";break;
case
2: hari = "Selasa";break;
case
3: hari = "Rabu";break;
case
4: hari = "Kamis";break;
case
5: hari = "Jumat";break;
case
6: hari = "Sabtu";break;
default
: hari = "Minggu";break;
}
}
istream&operator>>(istream&in,Kalender&masukan){
cout<<"Masukkan
hari ke-";
in>>masukan.hari_ke;
return
in;
}
ostream&operator<<(ostream&out,Kalender&keluaran){
out<<"Hari
ke-"<<keluaran.hari_ke<<" adalah
"<<keluaran.hari<<endl;
return
out;
}
int main(int argc, char** argv) {
Kalender
tanggal;
cin>>tanggal;
tanggal.adalah();
cout<<tanggal;
return
0;
}
Latihan
1.
#include <iostream>
#include <conio.h>
using namespace std;
class Banding {
friend istream& operator>>(istream&,
Banding&);
public:
Banding() {};
void bandingkan() {
int maks = x;
if (y > maks) maks = y;
if (z > maks) maks = z;
cout << "Bilangan terbesar : " <<
maks;
}
private:
int x, y, z; };
istream& operator>>(istream& in, Banding&
bilangan){
cout << "Bilangan pertama = ";
in >> bilangan.x;
cout << "Bilangan kedua = ";
in >> bilangan.y;
cout << "Bilangan ketiga = ";
cin >> bilangan.z;
return in;
};
main() {
Banding bilangan;
cin >> bilangan;
bilangan.bandingkan();
getch();
return 0;
}
2.
#include<cstdlib>
#include<iostream>
#include <conio.h>
#include<math.h>
using namespace std;
class persamaan{
public:
void
persamaan_kuadrat();
float rumus();
private:
int x,y,z;
float x1,x2;
float disk;
};
void persamaan::persamaan_kuadrat(){
cout<<"masukkan nilai A :";
cin>>x;
cout<<"masukkan nilai B :";
cin>>y;
cout<<"masukkan nilai C :";
cin>>z;
}
float persamaan::rumus(){
disk=y*y-4*x*z;
if (disk>0)
{
cout<<"Diskriminan="<<disk<<" Maka akar-akarnya
adalah:"<<endl;
x1=(-y+(sqrt(disk)))/(2*x);
cout<<"x1 :"<<x1;
cout<<endl;
x2=(-y-(sqrt(disk)))/(2*x);
cout<<"x2 :"<<x2;
}
else if(disk=0)
{
cout<<"Diskriminan="<<disk<<" Maka
akar-akarnya adalah:"<<endl;
x1=-y/2*x;
cout<<"x1 :"<<x1;
cout<<endl;
x2=x1;
cout<<"x2 :"<<x2;
}
else
cout<<"akar imajiner";
}
int main(int argc, char *argv[])
{
persamaan X;
X.persamaan_kuadrat();
X.rumus();
return 0;
}
3.
# include <iostream>
# include <conio.h>
#include <windows.h>
using namespace std;
int main()
{
int NILAI;
system("clrscr");
cout<<"\n============================================\n";
cout<<"Kode
Range Nilai\n";
cout<<"\n============================================\n";
cout<<"
1 00-20\n";
cout<<"
2 21-40\n";
cout<<"
3 41-60\n";
cout<<"
4 61-80\n";
cout<<"
5 81-100\n";
cout<<"\n-------------------------------------------\n";
cout<<"Silahkan pilih kode dari nilai anda
=";cin>>NILAI;
switch(NILAI)
{
case 1:
cout<<"E";
break;
case 2:
cout<<"D";
break;
case 3:
cout<<"C";
break;
case 4:
cout<<"B";
break;
case 5:
cout<<"A";
break;
default:
cout<<"Invalid";
break;
}
getch();
}
4.
#include <iostream>
#include <windows.h>
#include <string>
using namespace std;
int main()
{
int B;
float A;
cout <<"
masukan bilangan" << endl;
cin >> A;
B =A;
if (A==B)
{
cout <<
"BilanganBulat" << endl;
}
else
{
cout <<
"BilanganReal" << endl;
}
system("PAUSE");
return 0;
}
5.
#include <cstdlib>
#include <iostream>
#include <stdio.h>
using namespace std;
int main()
{
int bulan, tahun,
hari;
int jum_hari[12]=
{31,28,31,30,31,30,31,31,30,31,30,31};
char
b1[10],b2[10],b3[10],b4[10],b5[10],b6[10],b7[10],
b8[10],b9[10],b10[10],b11[10],b12[10];
cout<<"\t\t--------------------------------------------\n";
cout<<"\t\t>>MENENTUKAN
JUMLAH HARI DALAM SUATU BULAN<<\n";
cout<<"\t\t--------------------------------------------\n";
cout<<"\n";
cout<<"\t\tKeterangan\n";
cout<<"\t\t-------------------------------------------\n";
cout<<"\t\tBulan 1: Januari | Bulan 7 :Juli\n";
cout<<"\t\tBulan 2: Februari | Bulan 8 :Agustus\n";
cout<<"\t\tBulan 3: Maret | Bulan 9 :September\n";
cout<<"\t\tBulan 4: April | Bulan 10:Oktober\n";
cout<<"\t\tBulan
5: Mei | Bulan 11:November\n";
cout<<"\t\tBulan 6: Juni | Bulan 12:Desember\n";
cout<<"\t\t-------------------------------------------\n";
cout<<"\t\tMasukkan Bulan (1--12)
:";
cin>>bulan;
cout<<"\t\tMasukkan Tahun :";
cin>>tahun;
if(bulan==2)
{if(tahun &4==0)
hari=29;
else
hari=28;
}
else
hari=jum_hari[bulan-1];
cout<<"\t\t-------------------------------------------\n";
cout<<"\t\tJumlah hari dalam
bulan :";
cout<<bulan<<endl;
cout<<"\t\tPada tahun :";
cout<<tahun<<endl;
cout<<"\t\tDalam Satu Bulan
Terdapat :",
cout<<hari;
cout<<"hari\n";
cout<<endl;
system("pause");
return 0;
}
6.
#include <iostream>
#include
<conio.h>
using namespace std;
class Karakter
{
private:
char karakter;
public:
void Proses ();
void Output ();
};
void
Karakter::Proses()
{
cout<<"Masukkan Karakter =
";cin>>karakter;
};
void
Karakter::Output(){
if (karakter >='A'
&& karakter <='Z')
cout<<"Huruf
Besar"<<endl;
else if (karakter
>= 'a' && karakter <='z')
cout<<"Huruf
Kecil"<<endl;
else if (karakter
>= '0' && karakter <= '9')
cout<<"Digit
(Bilangan)"<<endl;
else
cout<<"Simbol"<<endl;
};
main ()
{
Karakter bilhur;
bilhur.Proses();
bilhur.Output();
getch ();
return 0;
}
7.
#include <iostream>
#include <conio.h>
using namespace std;
class Nilai {
friend
ostream& operator<<(ostream&, Nilai&);
friend
istream& operator>>(istream&, Nilai&);
public:
Nilai()
{};
void
konversikan() {
if
((nilai > 0) && (nilai <= 60))
nilai_huruf = 'F';
else
if ((nilai > 60) && (nilai <= 70))
nilai_huruf
= 'D';
else
if ((nilai > 70) && (nilai <= 80))
nilai_huruf
= 'C';
else
if ((nilai > 80) && (nilai <= 90))
nilai_huruf
= 'B';
else
nilai_huruf = 'A';
}
private:
int
nilai;
char
nilai_huruf;
};
istream& operator>>(istream& in, Nilai&
masukan) {
cout
<< "Masukkan nilai angka = ";
in
>> masukan.nilai;
return in;
};
ostream& operator<<(ostream& out, Nilai&
keluaran) {
out
<< "Nilai angka : " << keluaran.nilai << endl;
out
<< "Nilai huruf : " << keluaran.nilai_huruf;
return out;
}
int main() {
Nilai
angka;
cin
>> angka;
angka.konversikan();
cout
<< angka;
}
8.
#include <iostream>
using namespace std;
void first (int n) {
switch (n) {
case 1: cout
<< "satu "; break;
case 2: cout
<< "dua "; break;
case 3: cout
<< "tiga "; break;
case 4: cout
<< "empat "; break;
case 5: cout
<< "lima "; break;
case 6: cout
<< "enam "; break;
case 7: cout
<< "tujuh "; break;
case 8: cout
<< "delapan "; break;
case 9: cout
<< "sembilan "; break;
case 10: cout
<< "sepuluh "; break;
case 11: cout
<< "sebelas "; break;
default: break;
}
}
void second (int n) {
int bul, sisa;
bul = n / 10;
sisa = n % 10;
if (bul == 0)
first
(sisa);
else if (bul ==
1) {
if (sisa
<= 1)
first (n);
else {
first (sisa);
cout
<< "belas ";
}
}
else {
first
(bul);
cout
<< "puluh ";
first
(sisa);
}
}
void third (int n) {
int bul, sisa;
bul = n / 100;
sisa = n % 100;
if (bul == 0)
second
(sisa);
else if (bul ==
1) {
if (sisa
== 0)
cout
<< "seratus ";
else {
cout
<< "seratus ";
second (sisa);
}
}
else {
first
(bul);
cout
<< "ratus ";
second (sisa);
}
}
void fourth (int n) {
int bul, sisa;
bul = n / 1000;
sisa = n % 1000;
if (bul == 0)
third
(sisa);
else if (bul ==
1) {
if (sisa
== 0)
cout
<< "seribu ";
else {
cout
<< "seribu ";
third (sisa);
}
}
else {
third
(bul);
cout
<< "ribu ";
third
(sisa);
}
}
void fifth (int n) {
int bul, sisa;
bul = n /
1000000;
sisa = n %
1000000;
if (bul == 0)
fourth
(sisa);
else if (bul ==
1) {
if (sisa
== 0)
cout
<< "satu juta ";
else {
cout
<< "satu juta ";
fourth (sisa);
}
}
else {
third
(bul);
cout
<< "juta ";
fourth
(sisa);
}
}
int main () {
int n = 1;
while (n == 1) {
int num1;
do {
cout
<< "";
cin
>> num1;
} while
(num1 < 1);
fifth
(num1);
cout
<< "\n";
}
}
9.
#include <iostream>
#include
<conio.h>
#include
<stdio.h>
#include
<string.h>
#include <windows.h>
using namespace std;
main()
{
//input
char nama_kar [20],
pendidikan[5];
float tunjangan,
total;
double gaji,
jam_kerja, tot_kerja, uang_lembur, jam_lembur, kode;
system("clrscr");
cout<<"Program untuk menghitung
gaji karyawan kontrak"<<endl;
cout<<"PT.
Master SSD"<<endl;
cout<<"======================================="<<endl<<endl;
cout<<"Masukan nama karyawan:
";
gets(nama_kar);
cout<<"Masukan kode pendidikan
karyawan [1/2/3]: ";
cin>>kode;
cout<<"Masukan jumlah jam kerja:
";
cin>>tot_kerja;
//proses
if (kode==1)
{strcpy
(pendidikan,"SMU adalah sebesar: Rp. ");
tunjangan=800000*2.5/100;}
else if (kode==2)
{strcpy(pendidikan,"D3 adalah sebesar:
Rp. ");
tunjangan=800000*5/100;}
else
{strcpy(pendidikan,"S1 adalah sebesar: Rp.
");
tunjangan=800000*7.5/100;}
gaji=800000;
//Total jam kerja per
bulan adalah 192 jam.
/*Minimal memasukan
jam kerja 192 jam, karena dibawah itu
akan menyebabkan
nilai lembur menjadi minus
dan akan mempengaruhi
nilai total honor yang diterima.*/
jam_kerja=8*6*4;
jam_lembur=tot_kerja-jam_kerja;
uang_lembur=jam_lembur*2500;
total=uang_lembur+gaji+tunjangan;
//output
cout<<""<<endl<<endl;
cout<<"Karyawan yang bernama:
"<<nama_kar<<endl;
cout<<"Honor yang diterima sebagai
berikut:"<<endl<<endl;
cout<<"Honor tetap Rp.
"<<gaji<<endl;
cout<<"Tunjangan pendidikan
"<<pendidikan<<tunjangan<<endl;
cout<<"Jumlah lembur:
"<<jam_lembur;
cout<<"
jam x 2500 adalah sebesar Rp.
"<<uang_lembur<<endl<<endl;
cout<<"Total honor yang diterima
Rp."<<total<<endl;
getch();
}
Tidak ada komentar:
Posting Komentar