Skip to content

Les bases

Objectifs pédagogiques

  • Définir une fonction avec types de paramètres adéquats.
  • Utiliser les opérateurs arithmétiques.
  • Manipuler des variables de type "String".
fun inBase2(number: Int): String {
    var n: Int = number
    if (n == 0) {
        return "0"
    }
    var result: String = ""
    while (n != 0) {
        val digit: Int = n % 2
        n /= 2
        result = digit.toString() + result
    }
    return result
}

fun main(args: Array<String>) {
    println(inBase2(42))
}
101010
42 = 2^{5} + 2^{3} + 2^{1} = 32 + 8 + 2
fun inBase10(x: String): Int {
    var res: Int = 0
    for (c: Char in x) {
        res = res * 2
        if (c == '1') {
            res++
        }
    }
    return res
}

fun main(args: Array<String>) {
    println(inBase10("110011"))
}
51
2^{5} + 2^{4} + 2^{1} + 2^{0} = 32 + 16 + 2 + 1 = 51