Bonjour,
je suis débutant en programmation et je viens de commencer le cours iOS.
je suis actuellement à l’exercice de la calculette et j’ai essayé de faire l’exo sans regarder la correction pour commencer (et je suis content que mon code marche), je sais que mon code n’est pas superbe mais je voudrais vos avis sur mon code avant que je fasse la correction.
merci de vos retours
//
// ViewController.swift
// calculatrice
//
// Created by Arnaud G on 03/06/2018.
// Copyright © 2018 Arnaud G. All rights reserved.
//
import UIKit
class ViewController: UIViewController {
var resultat: Double = 0
var nb1: Double = 0
var nb2: Double = 0
var operateur: String = ""
func calcul(nb1: Double, nb2: Double, operateur: String) -> Double {
if operateur == "+" {
resultat = nb1 + nb2
resultatLabel.text = String(resultat)
}
if operateur == "-" {
resultat = nb1 - nb2
resultatLabel.text = String(resultat)
}
if operateur == "*" {
resultat = nb1 * nb2
resultatLabel.text = String(resultat)
}
if operateur == "/" {
resultat = nb1 / nb2
resultatLabel.text = String(resultat)
}
return resultat
}
func effaceZero() {
if resultatLabel.text == "0.0" {
resultatLabel.text = ""
}
}
//Labe qui affiche les valeurs
@IBOutlet weak var resultatLabel: UILabel!
//tout les boutons des chiffres ici
@IBAction func bouton0(_ sender: Any) {
effaceZero()
resultatLabel.text = resultatLabel.text! + "0"
}
@IBAction func bouton1(_ sender: Any) {
effaceZero()
resultatLabel.text = resultatLabel.text! + "1"
}
@IBAction func bouton2(_ sender: Any) {
effaceZero()
resultatLabel.text = resultatLabel.text! + "2"
}
@IBAction func bouton3(_ sender: Any) {
effaceZero()
resultatLabel.text = resultatLabel.text! + "3"
}
@IBAction func bouton4(_ sender: Any) {
effaceZero()
resultatLabel.text = resultatLabel.text! + "4"
}
@IBAction func bouton5(_ sender: Any) {
effaceZero()
resultatLabel.text = resultatLabel.text! + "5"
}
@IBAction func bouton6(_ sender: Any) {
effaceZero()
resultatLabel.text = resultatLabel.text! + "6"
}
@IBAction func bouton7(_ sender: Any) {
effaceZero()
resultatLabel.text = resultatLabel.text! + "7"
}
@IBAction func bouton8(_ sender: Any) {
effaceZero()
resultatLabel.text = resultatLabel.text! + "8"
}
@IBAction func bouton9(_ sender: Any) {
effaceZero()
resultatLabel.text = resultatLabel.text! + "9"
}
//boutons des operations
@IBAction func additionBouton(_ sender: Any) {
nb1 = Double(resultatLabel.text!)!
//print(nb1)
resultatLabel.text = ""
operateur = "+"
}
@IBAction func soutractionBouton(_ sender: Any) {
nb1 = Double(resultatLabel.text!)!
resultatLabel.text = ""
operateur = "-"
}
@IBAction func BoutonMultiplier(_ sender: Any) {
nb1 = Double(resultatLabel.text!)!
resultatLabel.text = ""
operateur = "*"
}
@IBAction func BoutonDiviser(_ sender: Any) {
nb1 = Double(resultatLabel.text!)!
resultatLabel.text = ""
operateur = "/"
}
//bouton effacement
@IBAction func acBouton(_ sender: Any) {
resultatLabel.text = ""
}
//bouton neg/pos resultat
@IBAction func changeSigne(_ sender: Any) {
if resultatLabel.text == "" {
resultatLabel.text = "0"
}
resultatLabel.text = String(Double(resultatLabel.text!)! * -1)
}
//pourcentage
@IBAction func pourcentage(_ sender: Any) {
resultatLabel.text = String(Double(resultatLabel.text!)! / 100)
}
//resultat
@IBAction func resultatBouton(_ sender: Any) {
calcul(nb1: nb1, nb2: Double(resultatLabel.text!)!, operateur: operateur)
/* operateur = ""
nb1 = 0
nb2 = 0
resultat = 0
*/
}
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}