Blog information

  • Category: Kuliah

  • Posted By: AglaBridgeMedia

  • Post date: 18 Apr 2020

  • Keywords: materi informatika contoh program palindrom dengan bahasa c, dasar pemrograman program palindrom bahasa c, palindrom dengan string bahasa c

  • Views: 2926

Dasar Pemrograman: Contoh Program Palindrom Dengan Bahasa C

Palindrom merupakan sebuah kata atau frasa atau teks atau angka atau bisa juga yang lainnya yang memiliki susunan apabila dibalik akan dibaca sama. Palindrom jika dibaca dari depan maupun belakang akan tetap mempunyai urutan yang sama. Contoh: kasur rusak, macam macam, 1234554321, !@#$$#@!, dan sebagainya. Lantas bagaimana kita menterjemahkan ke dalam bahasa C? Baiklah berikut akan saya share contoh kode program sederhana untuk bisa menentukan apakah suatu teks itu meurpakan palindrom atau bukan.


/* Contoh Program Palindrom Memanfaatkan String, Looping, Kondisional, Prosedur*/
#include
#include
void palindrom(char input[]);
void palindrom(char input[]){
    int i, j, status, cek, panjangteks;
    panjangteks = strlen(input);
    cek = panjangteks/2;
    status = 0;
    i = 0;
    j = panjangteks-1;
    /* Looping dengan for */
    for(i=0; (i        if(input[i]==input[j]){
             j --;
        } else{
            status = 1;
        }
    }
    /* Looping dengan while */
    /* while (status == 0 && i < cek){
        if(input[i]==input[j]){
             i ++;
             j --;
        } else{
            status = 1;
        }
    } */
    if (status == 1){
        puts("Bukan Polindrom");
    } else{
        puts("Polindrom");
    }
}
void main (){
    char input[50];
    puts("-----Program Cek Polindrom-----");
    printf("Masukan teks : "); gets(input);
    palindrom(input);
    return 0;
}

Dari potongan kode program di atas dapat kita lihat memanfaatkan beberapa teori sekaligus pada materi-materi sebelumnya. Adapun teori atau teknik yang dipakai antara lain penggunaan String, Looping, Kondisional dan juga Prosedur. Baik langsung pada pembahasan saja ya teman-teman. Pertama kita membuat prosedur dengan nama palindrom, nama prosedur boleh beda ya kawan. Prosedur palindrom ini memiliki parameter bertipe char berupa untuk menangkap string. Kemudian di dalamnya kita buat variabel dengan tipe int, yaitu i, j, status, cek dan panjangteks. Variabel i, j  dan cek digunakan untuk looping nantinya. Adapun variabel cek nanti dipakai untuk mencari nilai tengah masukan sebagai batas dari proses looping. Variabel status digunakan untuk mengecek apakah masukan berupa palindrom ataukah bukan, jika status bernilai 0 maka palindrom dan jika bernilai 1 maka bukan palindrom. Berikan nilai 0 pada variabel status untuk inisialisasinya, karena kita anggap belum ada nilai masukan dan dianggap sebagai palindrom. Variabel panjangteks digunakan untuk menghitung panjang dari masukan itu sendiri yang ini juga berkaitan dengan variabel j untuk proses kondisional di dalam looping.

Selanjutnya lakukan pengulangan atau looping sampai dengan memenuhi kondisi jika nilai dari variabel i lebih dari cek dan status bernilai 1. Kemudian dicek dengan kondisional di dalam looping. Ini dipakai untuk membandingkan karakter indeks ke i dengan karakter indeks ke j apakah sama, jika sama maka nilai j akan dikurangi 1. Jadi intinya karakter indeks ke i dimulai dari karakter pertama, sedangkan karakter ke j dimulai dari akhir teks masukan (ingat, nilai dari j adalah panjangteks-1, karena array selalu dimulai dari 0, maka di sini panjang teks dikurangi dengan 1). Kemudian dilakukan pengecekan terus hingga tengah-tengah teks masukan, atau dengan kata lain memenuhi nilai dari variabel cek seperti yang telah dijelaskan sebelumnya. Untuk memahami proses ini, teman-teman bisa melihat ilustrasinya di bawah ini.

 i-->     |batas
|1|2|3|4|5|5|4|3|2|1|
     batas|     <--j

Misalkan masukkannya adalah 1234554321 seperti di atas. Jadi bisa dibayangkan seperti orang yang berpapasan di jalan.

Nah setelah dicek dengan kondisi tersebut, jika karakter ke i dan karakter ke j tidak sama, maka langsung diberikan nilai 1 pada variabel status. Kemudian di luar proses looping lakukan pengecekan kembali pada variabel status, apakah bernilai 1 atau 0. Jika bernilai 1 maka bukan palindrom, jika bernilai 0 maka palindrom. Setelah prosedur selesai, tinggal panggil di main function seperti biasa. Kalau ini tidak perlu dijelaskan ya, karena hanya memanggil prosedur palindrom dengan parameter input bertipe char. Dan apabila kode tersebut dijalankan akan menghasilkan output seperti gambar berikut.


Nah bagaimana kawan? Mudah bukan belajar pemrograman? Sekian dulu share saya hari ini, semoga bermanfaat untuk teman-teman. Jangan lupa untuk terus mencoba dengan studi kasus yang lain agar teman-teman lebih paham dan bisa menambah wawasan. Tetap semangat mencari ilmu. Happy Coding ^_^







blog comments powered by Disqus