Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Criar laço de repetição para o código...

Oi... por favor, como faço para criar um laço de repetição para o codigo a seguir de forma que o usuario escolha se deseja ou nao "jogar" novamente?Obrigado

fun main(args: Array<String>) {

    val options = arrayOf("Pedra", "Papel","Tesoura")
    val gameChoice = getGameChoice(options)
    val userChoice = getUserChoice(options)

    printResult(userChoice, gameChoice)    
}
    fun getGameChoice(optionsParam: Array<String> ) =  optionsParam[(Math.random()*optionsParam.size).toInt()] 
    fun getUserChoice(optionsParam: Array<String> ): String {
        var isValidChoice = false
        var userChoice = ""
        while(!isValidChoice){
            print("Por favor, escreva um dos seguintes valores: ") 
            for(item in optionsParam)print(" $item")
            println(".")   
        val userInput = readLine()
        if(userInput !=null && userInput in optionsParam){
        isValidChoice = true
        userChoice = userInput
         }    
        if(!isValidChoice)
            println("Você deve escolher um valor sugerido") 
        }
        return userChoice
     }

    fun printResult(userChoice: String, gameChoice: String){ 
        val result: String 
        if(userChoice == gameChoice)
          result = "empatado"
       else if((userChoice == "Pedra" && gameChoice == "Tesoura")||(userChoice == "Papel" && gameChoice == "Pedra")||(userChoice == "Tesoura" && gameChoice == "Papel"))result = "Você venceu"
       else
         result = "Você perdeu"
        println("Você escolheu $userChoice. Eu escolhi $gameChoice. $result.") 
     }







1 resposta
solução!

Voce pode perguntar algo do tipo se a pessoa quer continuar, e ela digita y ou n e você faz sua condição ser algo do tipo: enquanto a resposta não for parar fica rodando o jogo.

fun main(args: Array<String>) {
    var keepRunning = true 
    while(keepRunning) {
    val options = arrayOf("Pedra", "Papel","Tesoura")
    val gameChoice = getGameChoice(options)
    val userChoice = getUserChoice(options)

    printResult(userChoice, gameChoice)    
    val userWantPlayAgain = getUserOptions()
    keepRunning = userWantPlayAgain
    }
}