--- title: CS Module 3 - Pointers --- # Case Study 3 - Adjacent Swap (KAMIS) ## Latar Belakang Upin dan Ipin dah besar sedang mengerjakan PR Alprog kelas 100 SD mereka. PR kali ini bertema penalaran dan berperan sebagai persiapan Ujian Nasional mereka masuk SMP. ![maxresdefault](https://hackmd.io/_uploads/rkqSNaqcyx.jpg) Pada PR kali ini, mereka kembali berurusan dengan String seperti kelas 50 SD dulu, akan tetapi, operasinya agak berbeda. Mereka ada jadwal tanding bola melawan alam sebelah di hari itu, jadi mereka meminta bantuanmu untuk mengerjakannya. #### Sistematis Program - Masing-masing "pasangan" karakter pada string akan dibalik. - Jika karakter tidak punya pasangan, maka tidak perlu dibalik. ## Spesifikasi FORMAT INPUT - Baris pertama berupa sebuah string. FORMAT OUTPUT - Output berupa string yang sudah ditranslasi - Gunakan function bertipe **void** untuk mengubah string dari pengguna (wajib void!). - Gunakan call by reference untuk function tersebut (wajib call by reference / menggunakan pointer!). - Input dan Output program berada di main function. HINT - Gunakan pointer sebagai parameter function untuk melakukan pemanggilan call by reference ## Contoh Output 1 ``` Halo Upin & Ipin (dah besar)! Masukkan String: upin --- String Terbalik: puni ``` upin -> up in -> pu ni -> puni 2 ``` Halo Upin & Ipin (dah besar)! Masukkan String: Barnabi --- String Terbalik: aBnrbai ``` Barnabi -> Ba rn ab i (i tidak berpasangan, abaikan) -> aB nr ba i -> aBnrbai 3 ``` Halo Upin & Ipin (dah besar)! Masukkan String: electro wizard --- String Terbalik: lecert oiwazdr ``` electro wizard -> el ec tr o- wi za rd (- menandakan karakter spasi) -> le ce rt -o iw az dr -> lecert oiwazdr Note: Agar scanf bisa menerima spasi, buat seperti berikut `scanf("%[^\n]s", stringInput);` 4 ``` Halo Upin & Ipin (dah besar)! Masukkan String: 123456789 --- String Terbalik: 214365879 ``` 12 34 56 78 9 -> 21 43 65 87 9 -> 214365879 ## Pengumpulan Dikumpulkan dalam format .c Format nama : ```CS_ALPROG[NomorModul]_NamaLengkap_NPM.c``` Semangat mengerjakan! 🚀