Contoh Program Rekursif Factorial dan Angka Terbilang Menggunakan Bahasa Kotlin


Program Rekursi Kotlin
Program Rekursif Kotlin
Contoh Program Rekursif Factorial dan Angka Terbilang Menggunakan Bahasa Kotlin - Rekursi merupakan suatu teknik pengulangan pemrograman untuk menghemat waktu dibanding menuliskan kondisi secara manual terus - menerus. Rekursif yang paling mudah adalah Factorial.
Yap, Factorial hanya mengalikan angka dengan 1 angka sebelumnya. Kemudian yang sedikit lebih advance adalah mengubah bilangan biasa menjadi angka terbilang. Saya pernah membahas Cara mengubah angka menjadi angka terbilang menggunakan Python pada postingan terdahulu.

Tetapi sekarang kita akan mengulang teknik tersebut sebagai bahan latihan menggunakan bahasa program terbaru untuk Android, Kotlin

Sebenarnya logika pemrograman pada bahasa program apa saja itu sama. Hanya saja untuk membiasakan diri menulis gaya syntaxnya itu yang sedikit berbeda. Oleh karena itu disini selain untuk latihan saya, semoga tutorial ini juga bermanfaat untuk sobat Otak Keren.

Langsung saja kita akan membuat dua contoh program rekursif dengan menggunakan bahasa Kotlin, yaitu program untuk Factorial dan program Angka Terbilang.

CONTOH PROGRAM FACTORIAL BAHASA KOTLIN

Program pertama yang kan kita bahas adalah program Factorial menggunakan bahasa kotlin. Program Factorial ini cukup sederhana, kita hanya perlu menuliskan beberapa baris code saja. Berikut kode Factorial yang telah saya buat menggunakan bahasa Kotlin.

fun main(args: Array<String>) {
    fun fact(x: Int): Int {
        if(x == 1) {
            return 1
        } else {
            return x * fact(x-1)
    }
    var a = readLine()!!
    println("Factorial dari $a adalah ${fact(a.toInt()})
}


Nah, maksud dari code diatas juga sangat sederhana. Pertama, kita membuat titik masuk bahasa Kotlin yaitu main(), selanjutnya kita definisikan fungsi factorial kita dengan mengambil satu argumen yaitu x dengan jenis Int atau Integer, kemudian tambahkan juga : Int pada fungsi sebagai penanda bahwa outputnya berupa Integer juga.

Kemudian logika sederhana untuk inti dari factorial, yang pastinya menggunakan program factorial. Kemudian kita buat input user pada kotlin dengan readLine(), kemudian beri tanda "!!" di akhir readLine().
Baca Juga: Tips Menjadi Programmer dan Blogger
Fungsinya adalah memastikan bahwa user mengetikkan sesuatu sehingga valuenya bukan null saat kita merubahnya menjadi integer untuk dimasukkan pada fungsi dengan method .toInt() . Dan disana kalian melihat tanda dollar. Fungsinya adalah sebagai String Formatting. Jadi kita cukup tambahkan "Dollar sign" pada variabel untuk mengambil valuenya, sedangkan jika berupa fungsi, atau lambda kita tambahkan "Kurung kurawam (curly braces)" untuk mengurungnya.

CONTOH PROGRAM ANGKA TERBILANG BAHASA KOTLIN

Pemrograman Angka terbilang pernah saya tuliskan dahulu menggunakan bahasa Python. Tapi searang kita akan menerjemahkannya kedalam bahasa Kotlin. Karena data Python masih ada, maka saya hanya mengubah syntaxnya saja.

Kan saya sudah katakan diawal kalau logika pemrograman itu sama saja, hanya berbeda syntaxnya dn itu butuh sedikit pembiasaan.

Dan dulu saya membuatya menggunakan Python, cukup menguras waktu dengan logika yang terlalu banyak. Tapi, bahasa Kotlin mendukung switch, dan Switchnya lebih mudah menurut saya dibanding JavaScript. Oleh karena itu disini saya mencoba memanfaatkan fungsi switch pada Kotlin tersebut. Berikut codenya.

fun main(args: Array<String>) {
    fun konversi(x: Int): String {
        val satuan = arrayOf(" ", "satu", "dua", "tiga", "empat", "lima", "enam", "tujuh",     "delapan", "sembilan", "sepuluh", "sebelas")
    
        var hasil = " "

        when(x){
            in 0..11 -> hasil += satuan[x]
            in 1..19 -> hasil += "${konversi(x-10)} belas"
            in 1..99 -> hasil += "${konversi(x/10)} puluh ${konversi(x%10)}"
            in 1..199 -> hasil += "seratus ${konversi(x-100)}"
            in 1..999 -> hasil += "${konversi(x/100)} ratus ${konversi(x%100)}"
            in 1..1999 -> hasil += "seribu ${konversi(x-1000)}"
            in 1..999999 -> hasil += "${konversi(x/1000)} ribu ${konversi(x%1000)}"
            in 1..999999999 -> hasil += "${konversi(x/1000000)} juta        ${konversi(x%1000000)}"
            in 1000000000..9999999999 -> hasil += "${konversi(x/1000000000)} milyar              ${konversi(x%1000000000)}"
            else -> hasil += "Angka Terlalu Besar !"
       }

    return hasil
    }

var a = readLine()!!
println(konversi(a.toInt()))
}


Maksud dari code diatas sama saja saat saya Membuat program angka terbilang dengan Python. Kalian bisa baca jika sulit memahami code diatas.

Disini saya hanya membuat list dari angka 1 sampai 11 dengan arrayOf(), oh ya karena ini array tidak akan saya ubah, maka saya menggunakan val. Kemudian kita bikin variabel kosong untuk menampung hasil kita.

Nah inilah switch milik Kotlin. Bukannya "switch()" di Kotlin bernama "when()". Karena jika kita menggunakan switch, maka tanda ==, <=, >= tidak berlaku. Maka saya disini menggunakan range.
Range pada kotlin adalah simbol 2 titik ".." dan uniknya disini jika kita membuat

for i in range(1,5):
    print(i)


pada Python, maka hanya terprint angka 1 - 4. Lain halnya dengan Kotlin jika kita menuliskan argumen yang sama pada range Kotlin

for (i in 1..5) println(i)

Maka akan muncul angka 1 - 5 sebagai output.

Lanjut pada code diatas, setelah range dibuat, maka saya berikan tanda "->" sebagai tugas mereka setelah terdeteksi true. Tugasnya masih sama saja dengan menggunakan Python hanya saja saya menambahkan sedikit gaya Kotlin disini, yaitu gaya String Formattingnya.

KESIMPULAN

Kesimpulan dari postingan ini adalah bahwa jika kita menguasai logik pemrograman kita dapat mengkonversi program dari bahasa program lain kedalam bahasa program yang kita inginkan.

Tapi, walau begitu tetap saja kemampuan kita menuliskan syntax juga harus dilatih agar semakin lancar. Demikian tutor saya tentang Contoh Program Rekursif Factorial dan Angka Terbilang Menggunakan Bahasa Kotlin.

Silahkan kalian praktekkan dan semoga kita sama - sama sukses memulai langkah menuju dunia Android. Silahkan juga bertanya pada kolom komentar jika ada code yang tidak dimengerti.

Share this

Related Posts

Previous
Prev Post »

1 komentar:

komentar
27 Oktober, 2017 05:46 delete


Hi there it's me, I am also visiting this web page daily, this web page is truly fastidious and the visitors are genuinely sharing nice thoughts. capital one login

Reply
avatar

Visitor baik, selalu tinggalkan jejak.
Silahkan komen yang relevan & tidak berlebihan, tidak berbau SARA & Pornografi, tidak mengandung promosi.
^ _ ^ Happy Blogging !