Convert Angka Ke Huruf

Berikut adalah coding untuk mengkonversi Angka ke huruf. ini pakai C++:

#include <conio.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>

char bilsat[10], bilpul[10], bilrat[10], bilrib[10];
int ubah(int, int);

void main()
{
int input,satuan,puluhan,ratusan,ribuan;
input=satuan=puluhan=ratusan==ribuan==0;
clrscr();

do{
clrscr();
printf("Masukkan input angka [1-9999] : ");
scanf("%d",&input);
}while(input>9999 || input<1);

satuan=input%10;
input=input/10;
puluhan=input%10;
input=input/10;
ratusan=input%10;
input=input/10;
ribuan=input%10;

ubah(satuan,1);
ubah(puluhan,2);
ubah(ratusan,3);
ubah(ribuan,4);

printf("\ndalam huruf adalah\n\n ");
if(ribuan==1)printf("seribu ");
if(ribuan>1)printf("%s ribu ",bilrib);
if(ratusan==1)printf("seratus ");
if(ratusan>1)printf("%s ratus ",bilrat);
if(puluhan==1)
if(satuan==0) {
printf(" sepuluh");
getch();exit(1);
}else if(satuan==1){
printf(" sebelas");
getch();exit(1);
}else{
printf(" %s belas",bilsat);
getch();exit(1);
}
if (puluhan>1) printf(" %s puluh",bilpul);
if (satuan>0) printf(" %s",bilsat);

getch();
}

int ubah(int temp,int status)
{
char tamp[10];
switch(temp)
{
case 1 : strcpy(tamp,"satu");break;
case 2 : strcpy(tamp,"dua");break;
case 3 : strcpy(tamp,"tiga");break;
case 4 : strcpy(tamp,"empat");break;
case 5 : strcpy(tamp,"lima");break;
case 6 : strcpy(tamp,"enam");break;
case 7 : strcpy(tamp,"tujuh");break;
case 8 : strcpy(tamp,"delapan");break;
case 9 : strcpy(tamp,"sembilan");break;
case 0 : strcpy(tamp,"nol");break;
}
fflush(stdin);
if(status==1)strcpy(bilsat,tamp);
if(status==2)strcpy(bilpul,tamp);
if(status==3)strcpy(bilrat,tamp);
if(status==4)strcpy(bilrib,tamp);

return 1;
}

Posting Komentar

0 Komentar