Partage
  • Partager sur Facebook
  • Partager sur Twitter

Problème d'incrémentation sous SWIFT 3

Dans le cadre d'un programme de calculatrice amélioré

Sujet résolu
    2 juin 2017 à 14:48:00

    Bonjour,

    voici mon code pour la calculatrice.

    La variable

    compteurOperation

     ne veut pas s'incrémenter, et je ne comprends pas pk ?! Merci d'avance pour votre aide!!

    //
    //  main.swift
    //  calculette
    //
    //  Created by Francois NOEL on 01/06/2017.
    //  Copyright © 2017 Francois NOEL. All rights reserved.
    //
    
    import Foundation
    
    // Fonction permettant de demander à l'utilisateur d'entrer un nombre et de le convertir en entier
    func input() -> Int {
        let strData = readLine();
        
        return Int(strData!)!
    }
    
    var recommencer = true
    
    while recommencer {
    
    // Déclaration des variables utiles pour le TP
    var nombre1: Int = 0
    var nombre2: Int = 0
    var operateur: Int = 0// Comprendra un nombre correspondant au menu (par exemple 1 pour une Addition)
    var resultat: Int = 0
    var operation: String = "" // Pour afficher le nom de l'opération dans la réponse
    var compteurOperation: Int = 0 // Pour compter le nombre d'opérations effectuées au total
    
    // On boucle tant que l'utilisateur n'a pas rentré un nombre compris entre 1 et 5
    repeat {
        compteurOperation = compteurOperation + 1 // On incrémente le nombre d'opération à chaque fois qu'on entre dans la boucle
    
        print("Nombre d'operations en cours: \(compteurOperation)")
        print("")
            // On affiche tout d'abord le menu
        print("--- MENU ---")
        print("1. Addition")
        print("2. Soustraction")
        print("3. Multiplication")
        print("4. Division")
        print("5. Modulo")
        print("")
        
        // On demande à l'utilisateur ce qu'il souhaite
        print("Que voulez-vous ? (de 1 à 5) ")
        operateur = input()
        
        
        switch operateur { //Permet de confirmer le choix de l'utilisateur
        case 1:
            print("Vous avez choisi de faire une addition")
            operation="L'addition"
        case 2:
            print("Vous avez choisi de faire une soustraction")
            operation="La soustraction"
        case 3:
            print("Vous avez choisi de faire une multiplication")
            operation="La multiplication"
        case 4:
            print("Vous avez choisi de faire une division")
            operation="La division"
        case 5:
            print("Vous avez choisi de faire un modulo")
            operation="Le modulo"
        default:
            print("C'est sûrement une erreur !")
        }
        
            print("") // Permet de réaliser un saut de ligne
        
        // Pour réaliser l'opération, il est nécessaire d'avoir entré un nombre qui correspond au menu
        if (operateur > 0 && operateur < 6) {
            // L'utilisateur rentre le premier nombre
            print("Entrez le premier nombre : ")
            nombre1 = input()
            
            // L'utilisateur rentre le deuxième nombre
            print("Entrez le deuxième nombre : ")
            nombre2 = input()
            
            switch operateur {
            case 1: // Addtion
                resultat = nombre1 + nombre2
                
            case 2: // Soustraction
                resultat = nombre1 - nombre2
                
            case 3: // Multiplication
                resultat = nombre1 * nombre2
                
            case 4: // Division
                resultat = nombre1 / nombre2
                
            case 5: // Modulo
                resultat = nombre1 % nombre2
                
            default:
                resultat = 0 // On ne devrait pas entrer dans ce cas normalement, mais si jamais, on indique à 0 le résultat.
                print("Une erreur est survenue.")
            }
            
            // Enfin, on affiche le résultat
            print("")
            print("\(operation) de \(nombre1) par \(nombre2) est \(resultat).")
            print("")
            
        }
        
        print("Voulez-vous recommencer une opération ? Tapez 1 pour oui, 2 pour non")
        
        var choix = input()
        if choix == 1 {
            recommencer = true
        } else if choix == 2 {
            recommencer = false
            print("Merci et Au Revoir :)")
            print("")
        } else {
            print("Je n'ai pas compris votre réponse. Le programme va s'éteindre. Dommage !")
            print("")
            recommencer = false
        }
    } while (operateur < 1 || operateur > 5)
    
    
    }
    



    • Partager sur Facebook
    • Partager sur Twitter
      9 août 2019 à 20:32:42

      Si moi, et je trouve pas comment faire l'ncrémentation ahah

      Il parait que i++ n'existe plus car déprécié par Apple et que c'est += mais même celle ci ne fonctionne pas.

      Perso j'ai fait une fonction pour reboucler le Soft

      Quelqu'un aurai une petite idée depuis 2 ans ? ^^

      // Fonction permettant de demander à l'utilisateur d'entrer un nombre et de le convertir en entier
      
      func input() -> Int {
          let strData = readLine();
          
          return Int(strData!)!
      }
      
      
      
      func calculatrice() {
          var nombre1 : Int
          var nombre2 : Int
          var operateur : Int
          var resultat : Int
          var reponse : String
       
          repeat {
              
              print("Vous en êtes à \(compteur) calcul")
              print("Entrer le type d'opération \n 1 : Addition \n 2 : Soustraction \n 3 : Multiplication \n 4 : Division \n 5 : Modulo \n 6 : Carré")
              
              operateur = input()
              
              if (operateur >= 1 && operateur <= 6){
                  switch operateur {
                  case 1 : print("Vous avez choisi addition")
                  print("Veuillez entrer votre premier nombre")
                  nombre1 = input()
                  print("Veuillez entrer votre deuxième nombre")
                  nombre2 = input()
                  resultat = nombre1 + nombre2
                  print("Le resultat est \(resultat)")
                  case 2 : print("Vous avez choisi soustraction")
                  print("Veuillez entrer votre premier nombre")
                  nombre1 = input()
                  print("Veuillez entrer votre deuxième nombre")
                  nombre2 = input()
                  resultat = nombre1 - nombre2
                  print("Le resultat est \(resultat)")
                  case 3 : print("Vous avez choisi multiplication")
                  print("Veuillez entrer votre premier nombre")
                  nombre1 = input()
                  print("Veuillez entrer votre deuxième nombre")
                  nombre2 = input()
                  resultat = nombre1 * nombre2
                  print("Le resultat est \(resultat)")
                  case 4 : print("Vous avez choisi division")
                  print("Veuillez entrer votre premier nombre")
                  nombre1 = input()
                  print("Veuillez entrer votre deuxième nombre")
                  nombre2 = input()
                  resultat = nombre1 / nombre2
                  print("Le resultat est \(resultat)")
                  case 5 :print("Vous avez choisi modulo")
                  print("Veuillez entrer votre premier nombre")
                  nombre1 = input()
                  print("Veuillez entrer votre deuxième nombre")
                  nombre2 = input()
                  resultat = nombre1 % nombre2
                  print("Le resultat est \(resultat)")
                  case 6 :print("Vous avez choisi Carré")
                  print("Veuillez entrer votre un nombre")
                  nombre2 = input()
                  resultat = nombre2 * nombre2
                  print("Le resultat est \(resultat)")
                  default:
                      print("Vous n'avez pas choisi entre 1 et 6")
                  }
              }
              else {
                  print("Tu n'as pas choisis un nombre entre 1 et 6")
              }
          } while operateur < 1 || operateur > 6
          print("Souhaites-tu recommencer ? (Tapez sur la touche Entrer pour recommencer)")
          reponse = readLine()!
          if (reponse == String("")){
              calculatrice()
          }
          else {
              print("parfait au revoir!")
              
          }
      }
      calculatrice()
      
      



      -
      Edité par FifouAK 9 août 2019 à 20:34:47

      • Partager sur Facebook
      • Partager sur Twitter

      Problème d'incrémentation sous SWIFT 3

      × 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