Program Membalik Kalimat Menggunakan Pointer dengan Bahasa C

Program membalik kalimat adalah program mengubah urutan masing-masing huruf dari sebuah kalimat yang ditampilkan, dengan kata lain yaitu kalimat yang muncul secara terbalik. Program membalik kalimat ini dibangun menggunakan bahasa pemrograman C (Ansi C) dengan menerapkan array bertipe char untuk menampung kalimat dan pointer yang digunakan untuk mengakses setiap karakter dalam array tersebut kemudian memanipulasi datanya hingga menampilkan kalimat dilayar secara terbalik.

Program Membalik Kalimat Menggunakan Pointer dengan Bahasa C
Program membalik kalimat

Pointer adalah variabel yang dapat memegang alamat tertentu dari suatu objek dalam memori. Array dan pointer memiliki keterkaitan, perbedaan dari keduanya adalah Array dikenal sebagai pointer yang tetap (fixed pointer) sedangkan pointer bersifat sangat dinamis artinya alamat yang dipegang oleh sebuah pointer dapat berubah-ubah.


Source Code Program:
#include <stdio.h>
#include <string.h>

int main(void){
  char arr[255], temp[255];
  char *p_arr;
  int pjg_kalimat, i, indeks_akhir;

  printf("\nMasukkan kalimat: ");
  scanf("%[^\n]", arr);

    printf("Hasil kalimat yang dibalik: ");
   

    /* Menghitung panjang kalimat */
    pjg_kalimat = strlen(arr);
    indeks_akhir = pjg_kalimat;

    strcpy(temp, arr);

    for(i=0; i<pjg_kalimat; i++){
      p_arr = &arr[i];
      *p_arr = temp[--indeks_akhir]; 

      printf("%c", arr[i]);
    }

    printf("\n\n");

  return 0;
}

Output Program:
Masukkan kalimat: Gemar TI
Hasil kalimat yang dibalik: IT rameG

Program Membalik Kalimat Menggunakan Pointer dengan Bahasa C
Run Program Membalik Kalimat


Penjelasan Program:
char *p_arr : deklarasi sebuah pointer. Bentuk umum pendeklarasian pointer adalah tipe_data *nama_pointer.
pjg_kalimat = strlen(arr) : variabel bertipe integer untuk menampung panjang isi array dari kalimat yang telah dimasukkan. Fungsi strlen yang merupakan built in function di dalam bahasa C untuk menghitung panjang array-nya.
strcpy(temp, arr) : mengkopi isi arr ke dalam variable temp. strcpy juga merupakan built in function dalam bahasa C untuk melukan copy.
p_arr = &arr[i] : pointer yang telah dideklarasi sebelumnya dengan isi nilainya adalah array dari index i. Simbol & pada pernyataan tersebut merupakan operator unari yang bermakna alamat (address) dengan arti yaitu pointer p_arr memegang alamat index dari array arr[i].

Logika dari jalan program tersebut adalah dilakukan perulangan (lopping) sebanyak panjang karakter dari kalimat yang dimasukkan oleh user mulai index 0 hingga n-1. Isi kalimat awalnya ditampung dalam variabel temp kemudian di dalam proses lopping tersebut isi dari index array pertama dari array arr diubah nilainya dengan isi index array terakhir dari array temp dan diproses hingga sampai index terakhir. Pada --indeks_akhir bermakna nilainya dikurang 1 secara terus menerus, itulah sebabnya kalimat dari isi array arr dibaca terbalik yaitu dari ujung ke pangkal. Kemudian menampilkan isi array arr yang telah berubah isinya dengan kalimat terbalik.

Demikianlah program membalik kalimat menggunakan pointer dengan bahasa C. Silahkan dikembangkan dan semoga bermanfaat.

Artikel Lainnya:

Kode-Kode Rahasia di Android

Android
Android adalah operating system (OS) mobile untuk smartphone. Android memang sudah banyak dipakai di berbagai jenis smartphone pada saat ini. Dalam ponsel android terdapat kode-kode rahasia yang jarang diketahui oleh pengguna ponsel itu sendiri yang berguna untuk mengakses yang tidak bisa diakses secara normal (default).

Berikut ini adalah kode-kode rahasia di Android yang dikutip dari trojanskefi.blogspot.com. Bisa Anda gunakan apalagi para  pengguna yang berpengalaman, namun untuk pemula (newbie) tidak disarankan menggunakan cara ini. Admin tidak bertanggung jawab jika terjadi kerusakan, crash, atau kerusakan hardware lainnya.

Jika Anda berminat berikut adalah kode-kode rahasia Android:

Informasi tentang ponsel dan baterai
* # * # 4636 # * # *
Hal ini menunjukkan 4 hal berikut menu di layar:
  1. Telepon Informasi
  2. Informasi baterai
  3. Sejarah Baterai
  4. Statistik


Reset data seperti asal
* # * # 7780 # * # *
Ini akan menghapus sebagai berikut:

  • Google pengaturan account yang disimpan di telepon Anda
  • Sistem dan aplikasi data dan pengaturan
  • Aplikasi yang Download dan TIDAK akan menghapus:
  • Sistem perangkat lunak saat ini dan paket aplikasi
  • SD Card file seperti foto, file musik, dll

Catatan: Setelah Anda memberikan kode ini, Anda mendapatkan prompt pada layar meminta Anda untuk mengklik pada tombol “Reset Telepon”. Jadi Anda mendapatkan kesempatan untuk membatalkan operasi Anda.

Format produsen asli
* 2767 * 3855 #
Pikirkan sebelum Anda memberikan kode ini. Ini akan menghapus semua file dan pengaturan, termasuk penyimpanan memori internal. Ini juga akan menginstal ulang firmware telepon.

Catatan: Setelah Anda memberikan kode ini, tidak ada cara untuk membatalkan operasi kecuali jika Anda melepas baterai dari telepon. Jadi berpikir dua kali sebelum memberikan kode ini.

Informasi tentang ponsel kamera
* # * # 34971539 # * # *
Kode ini menunjukkan 4 menu berikut :
- Update firmware dari kamera dalam gambar (Jangan mencoba opsi ini)
- Update firmware kamera di kartu SD
- Dapatkan versi firmware kamera
- Dapatkan hitungan update firmware

PERINGATAN: Jangan gunakan opsi pertama dinyatakan, ponsel kamera akan berhenti bekerja dan Anda akan perlu membawa telepon ke layanan / toko untuk menginstal ulang firmware kamera.

Kode ini dapat digunakan untuk mengubah “End Call / Power”
* # * # 7594 # * # *
Kode ini dapat digunakan untuk mengubah “End Call / Power” tindakan pada keypad ponsel Anda. Jadi default, jika Anda menekan tombol untuk beberapa saat, ia akan menampilkan layar yang meminta Anda untuk memilih pilihan dari mode Diam, dan Matikan telepon Airplane mode.

Anda dapat mengubah tindakan menggunakan kode ini. Anda dapat mengaktifkan kekuatan ini secara langsung dari tombol sehingga Anda tidak perlu membuang waktu Anda dalam memilih pilihan.

Buka layar di mana file copy
* # * # 273 283 * 255 * 663 282 *#*#*

Layanan modus log
* # * # 197328640 # * # *
Anda dapat menjalankan berbagai tes dan perubahan pengaturan dalam modus layanan.

Uji Kode: WLAN, GPS dan Bluetooth
* # * # 232339 # * # * – tes WLAN
* # * # 526 # * # * – tes WLAN
* # * # 528 # * # * – tes WLAN (Gunakan “Menu” untuk meluncurkan berbagai uji)
* # * # 232338 # * # * – Menampilkan alamat MAC dari WiFi
* # * # 1472365 # * # * – tes GPS
* # * # 1575 # * # * – tes GPS lain.
* # * # 232331 # * # * – tes Bluetooth
* # * # 232337 # * # – Menampilkan alamat Bluetooth

Peluncuran GTalk Service Monitor
* # * # 8255 # * # *


Kode untuk mendapatkan informasi versi firmware:
* # * # 4986 * 2650468 # * # * – PDA, Telepon, H / W, RFCallDate
* # * # Chiliders # * # * – PDA dan Telepon
* # * # 1111 # * # * – FTA BD Versi
* # * # 2222 # * # * – FTA HW Version
* # * # 44336 # * # * – PDA, Telepon, CSC, Membangun Waktu, nomor daftar perubahan.

Kode untuk meluncurkan berbagai Pabrik Tes:
* # * # 0283 # * # * – Loopback paket
* # * # 0 *#*#* – LCD tes
* # * # 0673 # * # * atau * # * # 0289 # * # * – tes Melody
* # * # 0842 # * # * – tes Device (Getaran, dan Backlight test)
* # * # 2663 # * # * – Touch versi layar
* # * # 2664 # * # * – Layar sentuh tes
* # * # 0588 # * # * – Sensor jarak tes
* # * # 3264 # * # * – RAM versi

Catatan: Segala sesuatu yang terjadi karena memasukkan kode-kode rahasia Android dari artikel ini sepenuhnya tanggung jawab pengguna.

Artikel Lainnya: