Структуры данных: массивы (Kotlin)

Материал из Информационная безопасностя
Перейти к навигации Перейти к поиску

Массивы

Задачи

Вывод всех целых чисел массива через пробел циклом For

 1 fun main() {
 2     val numbers: Array<Int> = arrayOf(1, 5, 8, 3, 9, 23, 15)
 3 
 4     for(number in numbers){
 5         print("$number ")
 6     }
 7     println()
 8 
 9     for(i in numbers.indices) {
10         print(numbers[i])
11         print(" ")
12     }
13     println()
14 }

Сделать массив из первых n нечётных чисел

1 fun main() {
2     var i = 1;
3     val numbers = Array(10) { i++ * 2 - 1 }
4 
5     for(number in numbers){
6         print("$number ")
7     }
8     println()
9 }

Сгенерировать массив случайных чисел

 1 import kotlin.random.Random
 2 
 3 fun main() {
 4     val numbers = Array(10) { Random.nextInt(-100, 100) }
 5 
 6     for(number in numbers){
 7         print("$number ")
 8     }
 9     println()
10 }

Вывести все содержащиеся в массиве нечетные числа в порядке возрастания их индексов, а также их количество

 1 import kotlin.random.Random
 2 
 3 fun main() {
 4     val numbers = Array(10) { Random.nextInt(-100, 100) }
 5 
 6     for(number in numbers){
 7         print("$number ")
 8     }
 9     println()
10 
11     var count = 0
12     for(number in numbers){
13         if (number < 0) {
14             print("$number ")
15             count++
16         }
17     }
18     println()
19     
20     println("Odd numbers count = $count")
21 }

Разделить массив на два: на положительные+ноль и отрицательные числа

 1 import kotlin.random.Random
 2 
 3 fun main() {
 4     val numbers = Array(10) { Random.nextInt(-100, 100) }
 5     val pos = Array(10) { 0 }
 6     var posIndex=  0
 7     val neg = Array(10) { 0 }
 8     var negIndex=  0
 9 
10     for(number in numbers){
11         print("$number ")
12 
13         if (number >= 0) {
14             pos[posIndex] = number;
15             posIndex++;
16         }
17         else {
18             neg[negIndex] = number;
19             negIndex++;
20         }
21     }
22     println()
23 
24     for(i in 0..posIndex-1) {
25         print(pos[i])
26         print(" ");
27     }
28     println()
29 
30     for(i in 0 until negIndex) {
31         print(neg[i])
32         print(" ");
33     }
34     println()
35 }

Задачник