полезные советы

Здесь – маленькие «пустячки», облегчающие жизнь и являющиеся основой любой сущности.

OCHEWIDNO.RU

Главная Найти хорошую работу Похудеть до своего веса Комплексы
Быть умным Быть красивым Каких любят мужчины Наслаждаться
Уметь плавать Вкусно готовь Будь здоров Философия жизни
Экономика и финансы Забытые заповеди Наши детки Разное

При изменении ширины экрана (повороте мобильного) - страницу ПЕРЕГРУЗИТЬ!

Н О В О Е

(последние заметки, по дате убывания)

(ПОДРОБНЕЕ: нажать здесь!)
Kotlin длина массива неизвестна

5.07.21г.Kotlin длина массива неизвестна

Как быть, когда неизвестна длина массива?

Условие задачи: В коде сторонней библиотеки обнаружился баг. Вместо отсортированного массива строк библиотека возвращает массив случайно упорядоченных строк. К счастью, в каждую строку в случайной позиции библиотека записывает порядковый индекс – позицию, где строка должна быть в выходном массиве, например, "str2ing".

Ваша задача обработать баг библиотеки и написать функцию, которая:

- извлечёт индекс из строки;

- с помощью индекса расположит строку в нужной позиции.

Возможное решение в Kotlin - пример:

(алгоритм описан в комментах)

import java.util.*

import kotlin.io.*

fun main () {

// объявление сканнера

val sc = Scanner(System.`in`)

// объявляем массив с неизвестной заранее длиной

var rou = arrayOf()

// объявление строковой перпеменной а с нулевым начальным значением

var a: String = null.toString()

// создание цикла для ввода строк при неизвестном заранее количестве итераций,

// работающий до ввода Stop

do {

a = sc.next()

rou += a

}while (a != "Stop")

// определение длины массива с учетом нулевой ячейки (минус 1)

val n = rou.size -1

// объявляем пустой массив

val array = arrayOfNulls(n)

// создаем цикл с длиной без ячейки со Stop

for (i in 0..n-1) {

// объявляем переменную х и присваиваем ей значение числа (отфильтровываем)

var x = rou[i].filter { it.isDigit() }

// объявляем переменную h и присваиваем ей значение НЕчисла (отфильтровываем)

var h = rou[i].filterNot { it.isDigit() }

// формируем (заданным образом) ячейку и заносим в массив

array.set(x.toInt()-1, "$h")

}

// выводим циклом в консоль полученный результат

for (i in array)

println(i)

}

Подписки НЕТ!

Поиск необходимой информации осуществляется в разделах Главного меню по ссылкам.

Уважая чужой опыт, считаю ОБЯЗАТЕЛЬНЫМ наличие «Обратной связи»:

Обратная связь

Права на материалы, размещенные на сайте, принадлежат Автору. Все права защищены и охраняются законом. При использовании материалов с сайта ссылка на него обязательна.

весна
Правильный CSS! Правильный CSS!
>