Структуры данных: массивы (Kotlin): различия между версиями
Перейти к навигации
Перейти к поиску
(Новая страница: «{{TOCRight}} == Массивы == * [https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-array/ Класс Массив (справка Kotlin)] * [https://metan...») |
|||
(не показаны 4 промежуточные версии этого же участника) | |||
Строка 6: | Строка 6: | ||
== Задачи == | == Задачи == | ||
=== Вывод всех целых чисел массива через пробел циклом For === | === Вывод всех целых чисел массива через пробел циклом For === | ||
+ | <syntaxhighlight lang="Kotlin" line> | ||
+ | fun main() { | ||
+ | val numbers: Array<Int> = arrayOf(1, 5, 8, 3, 9, 23, 15) | ||
+ | |||
+ | for(number in numbers){ | ||
+ | print("$number ") | ||
+ | } | ||
+ | println() | ||
+ | |||
+ | for(i in numbers.indices) { | ||
+ | print(numbers[i]) | ||
+ | print(" ") | ||
+ | } | ||
+ | println() | ||
+ | } | ||
+ | </syntaxhighlight> | ||
+ | |||
=== Сделать массив из первых n нечётных чисел === | === Сделать массив из первых n нечётных чисел === | ||
<syntaxhighlight lang="Kotlin" line> | <syntaxhighlight lang="Kotlin" line> | ||
+ | fun main() { | ||
+ | var i = 1; | ||
+ | val numbers = Array(10) { i++ * 2 - 1 } | ||
+ | for(number in numbers){ | ||
+ | print("$number ") | ||
+ | } | ||
+ | println() | ||
+ | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
=== Сгенерировать массив случайных чисел === | === Сгенерировать массив случайных чисел === | ||
<syntaxhighlight lang="Kotlin" line> | <syntaxhighlight lang="Kotlin" line> | ||
+ | import kotlin.random.Random | ||
+ | |||
+ | fun main() { | ||
+ | val numbers = Array(10) { Random.nextInt(-100, 100) } | ||
+ | for(number in numbers){ | ||
+ | print("$number ") | ||
+ | } | ||
+ | println() | ||
+ | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
=== Вывести все содержащиеся в массиве нечетные числа в порядке возрастания их индексов, а также их количество === | === Вывести все содержащиеся в массиве нечетные числа в порядке возрастания их индексов, а также их количество === | ||
<syntaxhighlight lang="Kotlin" line> | <syntaxhighlight lang="Kotlin" line> | ||
+ | import kotlin.random.Random | ||
+ | |||
+ | fun main() { | ||
+ | val numbers = Array(10) { Random.nextInt(-100, 100) } | ||
+ | for(number in numbers){ | ||
+ | print("$number ") | ||
+ | } | ||
+ | println() | ||
+ | |||
+ | var count = 0 | ||
+ | for(number in numbers){ | ||
+ | if (number < 0) { | ||
+ | print("$number ") | ||
+ | count++ | ||
+ | } | ||
+ | } | ||
+ | println() | ||
+ | |||
+ | println("Odd numbers count = $count") | ||
+ | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
=== Разделить массив на два: на положительные+ноль и отрицательные числа === | === Разделить массив на два: на положительные+ноль и отрицательные числа === | ||
<syntaxhighlight lang="Kotlin" line> | <syntaxhighlight lang="Kotlin" line> | ||
+ | import kotlin.random.Random | ||
+ | |||
+ | fun main() { | ||
+ | val numbers = Array(10) { Random.nextInt(-100, 100) } | ||
+ | val pos = Array(10) { 0 } | ||
+ | var posIndex= 0 | ||
+ | val neg = Array(10) { 0 } | ||
+ | var negIndex= 0 | ||
+ | |||
+ | for(number in numbers){ | ||
+ | print("$number ") | ||
+ | |||
+ | if (number >= 0) { | ||
+ | pos[posIndex] = number; | ||
+ | posIndex++; | ||
+ | } | ||
+ | else { | ||
+ | neg[negIndex] = number; | ||
+ | negIndex++; | ||
+ | } | ||
+ | } | ||
+ | println() | ||
+ | |||
+ | for(i in 0..posIndex-1) { | ||
+ | print(pos[i]) | ||
+ | print(" "); | ||
+ | } | ||
+ | println() | ||
+ | for(i in 0 until negIndex) { | ||
+ | print(neg[i]) | ||
+ | print(" "); | ||
+ | } | ||
+ | println() | ||
+ | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Текущая версия на 13:23, 6 июля 2021
Массивы
Задачи
Вывод всех целых чисел массива через пробел циклом 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 }