Palindrom Bahasa C

disini saya akan membagi cara untuk mengecek kata atau angka masukan dari user berupa palindrom atau bukan. WAIT ! palindrom?

perhatikan kata ini :

apa , ini , malam , kakak

perhatikan juga angka ini :

123321 , 14541 , 272 , 11

Yap ! kata kata dan angka diatas merupakan contoh dari palindrom :D  . Dengan pemograman kita dapat melakukan pengecekan apakah sebuah kata atau angka termasuk palindrom atau bukan .

bisa kita ambil contoh :

123321

123 321

angka di atas terdiri dari 6 digit

sehingga nantinya akan ada counter yg berjalan dari depan dengan wilayah (123) , dan counter dari belakang dengan wilayah (321)

counter depan berjalan maju dari awal , dan counter belakang yang berjalan mundur  dari digit paling belakang

Beginilah caranya (Bahasa C)  :

/*Masukan dari user bertipe string , agar program dapat dipakai untuk mengecek kata maupun angka*/

int main ()
{

/*

var input menyimpan masukan user

var i , counter dari depan

var j, counter dari belakang

var status , jika status bernilai 1 maka dinyatakan bukan palindrom . Di awal di set menjadi 0

var batascek , batas cek didapat dari tengah tengah pada suatu kata ataupun angka

var panjangkata , banyak huruf atau digit angka pada masukan user

*/
char input[50];
int i,j,status,batascek,panjangkata;
printf("masukan angka atau kata yang dicek : ");
scanf ("%s",&input);
panjangkata = strlen(input);
batascek = panjangkata/2;
status = 0;

/*

i , counter dari depan maka i = 0 , karena array dimulai dari 0

j , counter dari belakang, karena array dimulai dari 0 maka j = panjang kata - 1

pada proses perulangan akan terus mengecek setiap huruf / digit angka apakah sama dengan cerminannya , 
jika suatu ketika ternyata tidak cocok maka status di set 1 yang menyatakan bukan palindrom, 
counter i akan terus berjalan sampai tengah kata atau angka.

*/
i = 0;
j = panjangkata-1;

     while (status == 0 && i < batascek)
     {
          if(input[i]==input[j])
          {
             i ++;
             j --;
          }
          else
          {
             status = 1; 
          }
     }

     /*menampilkan hasil*/
     if (status == 1)
     {
         printf("bukan palindrom");
     }
     else
     {
         printf("palindrom");
     }
return 0;
}

Begitulah ! begini hasil eksekusinya :

Sekian untuk kali ini, tetaplah berbagi, Let’s share our knowledge !

sampai jumpa lagi😀

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s