Освой Kotlin играючи
/* Моя кошка замечательно разбирается в программировании. Стоит мне объяснить проблему ей - и все становится ясно. */
John Robbins, Debugging Applications, Microsoft Press, 2000
Посчитать число цифр в числе.
var number: Int = 4519 // какое-то число
var count = 0 // счётчик
while (number > 0) {
count++
number /= 10
}
println("Количество цифр в числе: $count")
Создать список чисел от 1 до 10, перемешать их, удалить чётные числа, умножить оставшиеся числа на 2, отсортировать по возрастанию.
Процедурный способ.
// перемешиваем числа от 1 до 10
val numbers = (1..10).shuffled().toMutableList()
// удаляем чётные числа
var index = 0
while (index < numbers.count()) {
if (numbers[index] % 2 == 0) {
numbers.removeAt(index)
} else {
index += 1
}
}
// умножаем на 2
for (i in numbers.indices) {
numbers[i] = numbers[i] * 2
}
// сортируем по возрастанию
for (i in (1 until numbers.count())) {
val temp = numbers[i]
var swap = i
while (swap > 0 && numbers[swap - 1] > temp) {
numbers[swap] = numbers[swap - 1]
--swap
}
numbers[swap] = temp
}
// выводим результат
for (num in numbers) {
println(num)
}
Функциональный способ.
// перемешиваем числа от 1 до 10
val numbers = (1..10).shuffled()
// удаляем чётные числа
val oddNumbers = numbers.filter { it % 2 != 0 }
// умножаем на 2
val doubledNumbers = oddNumbers.map { it * 2 }
// сортируем по возрастанию
val sortedNumbers = doubledNumbers.sorted()
// выводим результат
sortedNumbers.forEach { println(it) }