Yanlış Çıkarma

Kotlin dili ile programcılık becerinizi geliştirmek için örnek problemleri çözmeye devam edilim. Bu yazıda ele alacağımız problem ve kodları aşağıdaki gibidir.

Problem

Eymen bir sayıyı nasıl azaltacağını öğrenen küçük bir çocuktur. Fakat bu işlemde iki veya daha fazla basamaktan oluşan sayılarda yanlış yapıyor. Eymen verilen bir çıkarma işlemini yaparken aşağıda verilen iki durumu baz alıyor:

  • Sayının son basamağı sıfır değilse sayıyı 1 azaltıyor,
  • Sayının son basamağı sıfır ise sayıyı 10’a bölüyor (Yani son basamağı siliyor)

Eymen’e n ve k olmak üzere iki adet tamsayı veriliyor. Amaç n sayısı üzerinde k kez çıkarma işlemi yapmaktır. Sizin göreviniz k kez çıkarma işlemi yapıldıktan sonra sonucu bulup ekrana yazmaktır. Sonuç her zaman için pozitif tamsayı olacaktır.

Giriş

Kullanıcı n ve k olmak üzere iki sayı girişi yapar. n, Eymen’in çıkarma işlemini yapacağı sayı; k ise çıkarma işleminin kaç kez yapılacağını gösterir.

Çıkış

n sayısı üzerinde k kez çıkarma yapıldıktan sonra ekrana sonuç olarak bir tamsayı yazdırınız.

Örnek

Giriş -1
512 4

Çıkış -1
50

Giriş -2
1000000000 9

Çıkış -2
1

fun readLn() = readLine()!!
fun readArr() = readLn().split(" ")
fun readToInt() = readArr().map { it.toInt() }

fun main(args: Array<String>) {
    var (n, k) = readToInt()

    repeat(k){
        var x=n%10
        if (x==0) n=n/10
        else n=n-1
    }

    println(n)
}

Kaynak: https://codeforces.com/contest/1212/problem/A

**Bana en büyük desteğiniz yazılarıma yorum yapmanız ve paylaşmanızdır.