1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132
| //
// main.swift
// ProgLines01
//
// Created by Patyom on 29/04/2017.
// Copyright © 2017 Patyom. 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!)!
}
// Fonction permettant de demander à l'utilisateur d'entrer un string
func inputStr() -> String {
let strDataStr = readLine();
return String(strDataStr!)!
}
// Déclaration des variables utiles pour le TP
var nombre1: Int
var nombre2: Int
var compteur: Int = 0
var cpt: Int = 0
var texte: String
var ouinon : String
var operateur: Int // Comprendra un nombre correspondant au menu (par exemple 1 pour une Addition)
var resultat: Int
//var liste: [Int:String] = [1: "Addition", 2: "Soustraction", 3: "Multiplication", 4: "Division", 5: "Modulo", 6: "Carré"]
var liste = ["Addition", "Soustraction", "Multiplication", "Division", "Modulo", "Carré"]
// Essai tantque La réponse est égal à "o" ou "O"
repeat {
// On boucle tant que l'utilisateur n'a pas rentré un nombre compris entre 1 et 6
repeat {
cpt = 0
// On affiche tout d'abord le menu
print("--- Menu ---")
for i in liste {
cpt = cpt + 1
var texte = "\(cpt)" + ". " + i
print(texte)
}
print("")
// On demande à l'utilisateur ce qu'il souhaite
print("Que voulez-vous ? (de 1 à 6) ")
repeat {
operateur = input()
} while (operateur < 1 || operateur > 6)
print("") // Permet de réaliser un saut de ligne
// Affichage du type de choix
// print("Vous avez choisi : " + liste[operateur])
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 < 7) {
// test d'affichage de demande d'1 ou 2 nombres
if (operateur == 6) {
// L'utilisateur rentre un nombre pour calcul "Carré"
print("Entrez un nombre : ")
nombre1 = input()
switch operateur {
case 6: // Carré
resultat = nombre1 * nombre1
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.")
}
} else {
// 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("Le résultat de " + liste[operateur - 1] + " est : \(resultat)")
print("")
compteur = compteur + 1
// Affichage du compteur
print("Vous avez déjà effectué \(compteur)")
print("")
}
} while (operateur < 1 || operateur > 6)
// Question à L'utilisateur pour un autre essai
print("Voulez-vous procéder à un nouvel essai ? ")
ouinon = inputStr()
} while (ouinon == "O" || ouinon == "o") |
Partager