Hari
: Senin
Tanggal
: 16 Maret 2015
Jam
: 17:40
Tempat
: Depan Aud A kampus III UAD
Mata
Kuliah : Algoritma dan Pemrograman
Ketua
Kelompok : Tegar Putra Kurniawan
Notulis :
M.Saiful Hadi
:
Nanda Tama Erda Pradana
Algoritma
Mengkonversi Angka menjadi ejaan/teks pengucapan
1.
Masukkan angka(input)
2.
contoh 2015
3.
di konversikan menjadi ejaan/teks ucapan
4. Jika ( If ) memasukan Angka 2015 maka menjadi
“Dua Ribu Lima Belas”
#include
<iostream>
#include
<conio.h>
using
namespace std;
/*
run this program using the console pauser or add your own getch,
system("pause") or input loop */
/*M.Saiful
Hadi*/
class
konversi {
friend istream&
operator>>(istream&,konversi&);
public:
konversi(unsigned int b=0){bilangan=b;}
void membilang1();
void membilang2();
void membilang3();
void membilang4();
void membilang5();
void konversikan();
private:
unsigned int bilangan;
};
istream&
operator>>(istream& in, konversi& x){
cout<<"Kelompok
4"<<endl;
cout<<"Masukkan Bilangan :
";
in>>x.bilangan;
return in;
}
void
konversi::konversikan(){
if (bilangan<=11)membilang1();
else if(bilangan>19 &&
bilangan<100)membilang3();
else if(bilangan>=100 &&
bilangan<1000)membilang4();
else if(bilangan>=1000 &&
bilangan<10000)membilang5();
else membilang2();
}
void
konversi::membilang5(){
int ratusan;
if (bilangan>=1000 &&
bilangan<10000){
ratusan=bilangan%1000;
bilangan=bilangan/1000;
if(bilangan>1)
konversikan();
else if(bilangan=1)
cout << "se";
cout<<"ribu ";
bilangan=ratusan;
konversikan();
}
}
void
konversi::membilang4(){
int puluhan;
if (bilangan>=100){
puluhan=bilangan%100;
bilangan=bilangan/100;
if(bilangan>1)
konversikan();
else if(bilangan=1)
cout << "se";
cout<<"ratus ";
bilangan=puluhan;
konversikan();
}
}
void
konversi::membilang3(){
int satuan;
if (bilangan>19 &&
bilangan<100){
satuan=bilangan%10;
bilangan=bilangan/10;
konversikan();
cout<<" puluh ";
bilangan=satuan;
konversikan();
}
}
void
konversi::membilang1() {
switch(bilangan){
case 0:cout<<"nol";break;
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:cout<<"diluar
range\n";
}
}
void
konversi::membilang2(){
int temp;
if(bilangan>11){
bilangan%=10;
membilang1();
cout<<"belas";
}
}
int
main(){
konversi a;
cin>>a;
a.konversikan();
getch();
}
Tidak ada komentar:
Posting Komentar