Странный Kotlin школьный проект - PullRequest
0 голосов
/ 30 апреля 2020

Мы начинаем копаться в Kotlin в школе, и мы только начали изучать циклы, операторы и операторы if / else. Мы использовали их до сих пор, чтобы создать небольшую программу, которая принимает вводимые пользователем цифры и превращает их в «прямоугольник», состоящий из символов звездочки, но с пробелами в середине. Это работает все хорошо и хорошо, но теперь учитель хочет, чтобы мы использовали те же методы для создания полутреугольника, но с тем, чтобы он был полым в середине, как коробка, которую мы делали раньше. Мне тяжело понять, где объединить то, что мы узнали. Я думаю, что я близко, но я не могу понять, где я иду не так.

На данный момент у меня есть:


 fun main() {
        println("Please enter size of line: ")
    var size = readLine()!!.toInt()

    for (i in 1..size) {
        print("*")
        for (i in 1..(size-1)) {
            print(" ")

        }
        println("*")
        size++
    }


    for( i in 1..size) {
        print("*")
    }
}

Любая помощь или советы будут высоко оценены, конечный продукт должен выглядеть примерно так (при условии, что вы ввели '8')

*
**
* *
*  *
*   *
*    *
*     *
********

1 Ответ

1 голос
/ 30 апреля 2020

Я не хочу выполнять ваше задание, так что вот подсказка. Я думаю, что часть, которую вы упускаете, думает об отношении внутреннего l oop к внешнему l oop.

fun main() {
    println("Please enter size of line: ")
    var size = readLine()!!.toInt()

    for (i in 1..size) {
        print("*")
        for (j in 1..??) { // TODO - think about the relation of j to current i
            print(" ")

        }
        println("*")
       // size++ - this is adding an extra increment you don't need
    }

   for( i in 1..size) {
       print("*")
   } 
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...