Ok, akhirnya sampai di sini juga. Program berikut
adalah program untuk menyebut angka dalam bentuk kalimat mulai dari 1 sampai
jutaan. Misalnya angka 123 menjadi “seratus dua puluh tiga”, dst. Berikut ini
salah satu contoh kodenya:
#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);
}
}
void main
() {
int n = 1;
while (n == 1) {
int num1;
do {
cout << "";
cin >> num1;
} while (num1 < 1);
fifth (num1);
cout << "\n";
}
}
Tidak ada komentar:
Posting Komentar