Latihan Kode Program Bahasa C: Periksa Kata Palindrom

Latihan kode program bahasa C kali ini akan membahas cara membuat program untuk memeriksa kata atau angka palindrom. Soal ini bisa dipakai untuk menguji pemahaman logika dasar serta perulangan.


Soal Periksa Kata/Angka Palindrom

Buatlah program dalam bahasa C yang meminta data inputan berupa kata atau angka. Program kemudian akan memeriksa apakah kata tersebut termasuk palindrom atau bukan.

Berikut contoh tampilan akhir yang diinginkan (1) :

## Program Kata / Angka Palindrom Bahasa C ##
===========================================

Input kata/angka: malam

malam adalah palindrome!

Berikut contoh tampilan akhir yang diinginkan (2) :

## Program Kata / Angka Palindrom Bahasa C ##
===========================================

Input kata/angka: 1234321

1234321 adalah palindrome!

Berikut contoh tampilan akhir yang diinginkan (3) :

## Program Kata / Angka Palindrom Bahasa C ##
===========================================

Input kata/angka: kataku

kataku bukan palindrome!


Tips Membuat Kode Program Periksa Kata/Angka Palindrom

Mengutip wikipedia, palindrom adalah sebuah kata, bilangan, frasa, atau susunan karakter lain yang serupa jika dibaca dengan urutan terbalik ataupun tidak, seperti dalam kakak ataupun apa.

Tugas kita adalah merancang kode program dalam bahasa C untuk memeriksa apakah sebuah kata yang diinput sama jika dibaca dari sisi kiri dan sisi kanan.

Ide dasar untuk kode programnya adalah buat sebuah perulangan, lalu bandingkan isi karakter 1 dengan karakter terakhir. Jika sama, maka bandingkan lagi karakter kedua dengan karakter terakhir -1, dst. Jika terdapat karakter yang tidak sama, maka bisa dipastikan itu bukan kata palindrom.

Soal ini melatih logika dasar dan pemecahan masalah. Berikut tutorial pendahuluan yang bisa diikuti:

Silahkan coba rancang sebentar programnya.


Kode Program Bahasa C Periksa Kata/Angka Palindrom

Berikut salah satu solusi dari soal memeriksa kata atau kata palindrom menggunakan bahasa pemrograman C:

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

int main(void)
{
  printf("## Program Kata / Angka Palindrom Bahasa C ## \n");
  printf("=========================================== \n\n");

  char input[50];
  int i,panjang_input;

  printf("Input kata/angka: ");
  gets(input);

  panjang_input = strlen(input);
  printf("\n");

  for (i=0; i<panjang_input/2; i++) {
    if (input[i] != input[panjang_input-i-1]) {
      printf("%s bukan palindrome!",input);
      break;
    }
  }

  if (i==panjang_input/2) {
    printf("%s adalah palindrome!",input);
  }

  printf("\n");
  return 0;
}

Latihan Kode Program Bahasa C - Periksa Kata Palindrom

Pada awal kode program, selain butuh header file stdio.h, saya juga perlu header file string.h di baris 2. File string.h nantinya akan dipakai untuk mengakses fungsi strlen() ketika mencari panjang string.

Masuk ke dalam function main(), terdapat deklarasi 3 variabel: input, i dan panjang_input. Variabel input dibuat sebagai array dari char karena bahasa C tidak menyediakan tipe data string secara bawaan.

Proses input dilakukan pada baris 13 dengan perintah gets(input). Panjang karakter input bisa didapat dari function strlen(input) di baris 15 dan disimpan ke dalam variabel panjang_input.

Pemeriksaan apakah kata yang diinput itu palindrom atau bukan dilakukan dengan perulangan for pada baris 18-23. Perulangan ini mulai dari i=0 hingga i<panjang_input/2. Pembagian dengan angka 2 bertujuan karena kita hanya perlu melakukan perulangan untuk setengah karakter awal saja.

Di dalam perulangan, akan diperiksa apakah karakter di posisi input[i] tidak sama dengan input[panjang_input-i-1]). Jika ada satu karakter saja yang tidak sama, maka jalankan perintah printf("%s bukan palindrome!",input) dan break untuk segera menghentikan perulangan. Namun jika karakter tersebut sama, maka lanjut ke iterasi berikutnya.

Kata yang diinput akan dinyatakan sebagai palindrom hanya jika nilai variabel i sama dengan panjang_input/2. Kondisi ini akan tercapai jika perulangan for sukses berjalan sampai akhir. Proses pemeriksaan ini dilakukan pada baris 25-27.


Demikian kode program latihan periksa kata palindrom dalam bahasa pemrograman C. Semoga bisa bermanfaat.

Add Comment