Partage
  • Partager sur Facebook
  • Partager sur Twitter

Kotlin : Calculatrice

Anonyme
    20 août 2020 à 14:07:13

    Bonjour j'essaye de créer une calculatrice en Kotlin sur console avec les 4 calculs additions soustractions multiplications et divisions j'ai plus ou moins réussi mais cependant il y a des erreurs .

    Le console s'ouvre en proposant de choisir entre les 4 calculs , tu choisis , si tu choisis autre chose , ça redemande de choisir entre les 4 .

    Après avoir choisi tu tapes les chiffres que tu veux calculer entre eux , ici c'est que 2 chiffres , et ensuite a la fin ça redemande si tu veux refaire un calcul . Le problème c'est que ce n'est plus dans le boucle donc on peut refaire un des 4 calculs une seule fois avant que le programme s’arrête . De quel façon faire revenir le boucle ?

    fun addition(a:Float,b:Float):Float{
        return a+b
    }
    fun soustraction(a:Float,b:Float):Float{
        return a-b
    }
    fun multiplication(a:Float,b:Float):Float{
        return a*b
    }
    fun division(a:Float,b:Float):Float{
        return a/b
    }
    
    fun main() {
    
        fun choix(num:Int){
    
             when {
                 num == 1 -> {
                    println("Faite votre addition :choissisez 2 chiffres ")
                    println(addition(readLine()!!.toFloat(),readLine()!!.toFloat()))
                }
                 num == 2 -> {
                    println("Faite votre soustraction :choissisez 2 chiffres  ")
                    println(soustraction(readLine()!!.toFloat(),readLine()!!.toFloat()))
                }
                 num == 3 ->{
                     println("Faite votre amultiplication :choissisez 2 chiffres  ")
                     println(multiplication(readLine()!!.toFloat(),readLine()!!.toFloat()))
                 }
                 num == 4 -> {
                     println("Faite votre division : choissisez 2 chiffres ")
                     println(division(readLine()!!.toFloat(),readLine()!!.toFloat()))
                 }
    
                 else ->{
                     println("Erreur vous devez choisir entre 1 et 4 : ")
                     choix(readLine()!!.toInt())
                 }
                      }
        }
        println("               BIEVENUE DANS LA CALCULATRICE DU FUTUR ")
        println("      Quel type d'opération voulez vous faire , entrez votre choix 1 a 4 : ")
        println("1.Addition")
        println("2.Soustraction")
        println("3.Multiplication")
        println("4.Division")
    
        choix(readLine()!!.toInt())
        println("Voulez vous refaire un calcul ? Tapez 1 pour oui ")
        val reponse = readLine()!!.toInt()
        if (reponse == 1) choix(readLine()!!.toInt()) else "OK"
    
    
    }



    -
    Edité par AbcAbc6 20 août 2020 à 15:35:14

    • Partager sur Facebook
    • Partager sur Twitter
      20 août 2020 à 15:31:53

      utilisation d'une boucle while et donc rajout d'une valeur supplémentaire pour en sortir  => https://kotlinlang.org/docs/reference/control-flow.html#while-loops

      (et du coup, on peut éviter que choix() se rappelle elle-même en cas de choix erroné; au bout d'un moment, on risque d'avoir un problème de profondeur d'appels: imagine que l'on rentre 100 fois de suite, autre chose que 1,2,3 ou 4, on va avoir 100 appels empilés à la fonction)

      • Partager sur Facebook
      • Partager sur Twitter

      Kotlin : Calculatrice

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown