Sebelum pamitan dari warnet ini, aku ingin menulis satu function untuk membalikkan string atau kata dalam PHP.
misal
input = Hello
nanti
output = olleH
jadi dibalik
Ini aku masukkan dalam salah satu soal tes saringan programmer kemarin2, dalam kategori soal PHP basic dan soal no satu.
Bagaimana penyelesainnya ?
Algoritma penyelesaian :
kalau kita perhatikan merubah kata ‘Hello’ menjadi ‘olleH’ adalah logikanya demikian :
1. huruf o yang ada di paling belakang kata Hello di letakkan di depan ( lihat : olleH)
2. huruf sebelum o dalam kata Hello , yakni l di letakkan setelah o ( lihat : olleH)
3. begitu seterusnya, mengurutkan huruf, dari yang paling belakang, huruf paling belakang jadi paling depan, disusul yang lain
4. Dari logika tersebut maka kita bisa ambil kesimpulan, jalan pemecahan soal tersebut adalah dengan mengambil huruf paling belakang ditaruh paling depan dan disusul dengan yang lain.
5. masuk ke coding , kalau dalam kata Hello, kita ingin mengambil huruf o, maka kita gunakan fungsi substr, untuk memotong atau mengambil sebagian huruf dari kata.
subtr(‘Hello’, 4 , 1);
makan akan menghasilkan ouput o
keterangan :
substr = fungsi untuk memotong string atau kata
4 = pemotongannya dimulai dari index ke 4 , fungsi ini indexnya dari 0 , index ke 0 = H, index ke 4 = o
1 = dibatasi satu huruf saja pengambilannya
jadi misal kalau :
subtr(‘Hello’, 3 , 1)
berarti akan menghasilkan huruf l , pemotongan pada Hello dimulai dari index ke 3 sejumlah 1 string
berarti kita sudah dapat , huruf o dan l (ol)
agar lebih cepat maka kita gunakan pengulangan, kalau kita perhatikan contoh di atas yang berubah hanya angka 4 dan 3 di fungsi substr, oleh karenanya kenapa tidak kita gunakan pengulangan saja
Berikut function hasil jadinya :
function balik_kata($string)
{$result = ”;
$panjang = strlen($string);
for($i = 1; $i <= $panjang; $i++)
{$result .= substr($string, $panjang-$i, 1);
}
return $result;
}
nanti waktu manggil functionnya :
echo balik_kata(‘Hello’)
dengan demikian nanti akan menghasilkan
olleH
simple bukan ?
sebagai info fungsi strlen di atas adalah berguna menghitung panjang string,
strlen(‘Hello’) menghasilkan 5, karena hurufnya ada 5
tapi ini jawaban dariku, bisa saja programmer lain mempunyai jawaban yang lain , dan itu sah sah saja karena logika antar programmer beda adalah hal wajar.
Terima kasih sudah membaca
Jakarta, 15 Oktober 2011
Mahrizal
jawaban ane kemaren juga kyk gitu gan.. hehehe
btw gan
klo echo balik_kata(‘Hello’) jadi nya “olleh” gan.. bukan “elloh”
hehehe
SukaSuka
Ping balik: Function built in PHP membalikkan string « Mahrizal