Значение переменной "a" получает неожиданные результаты

я новичок в сфере программирования на Айос. Пытался написать код симулятора банкомата, написал в первый раз многократным с использованием if else, при попытке модернизировать свой код и использовать взамен функции у меня возникла ошибка с переменной "a". Какое то суперкраткое готовое решение от гуру мне не нужно , я только лишь хочу понять что не так.

import Foundation
var operatingScreen: Bool = true
while operatingScreen == true {

var balance: Int = 500               //initial balance

func showBalance(){
print("Your current balance is \(balance) $")}

showBalance()

print("""
Please choose a transaction
1 for Income
2 for Cashout
3 for Exit
""")
if let input = readLine() {
if let x = Int(input) {

switch x {
  case 1 :
  print("Please enter amount")
  if let input = readLine() {
  if let amount = Int(input) {    // Amount entrance
    balance += amount
    print("+ \(amount)")}}
   showBalance()
    
case 2:
    print("Please enter amount")
    if let input = readLine() {
    if let amount = Int(input) {
if amount < 5 {
            print("Your amount should be more than 5$ to proceed Cash out ")
            break}
        if amount > balance {
            print("Amount exceeds balance")
            break}
        
            balance = balance - amount
        
    print("""
    Please choose an available bank note:
    100
    50
    20
    10
    5
    """)
        
    if let input = readLine() {
        if let banknote = Int(input) {
    ===============================================
    Собственно тут начинается сам трэш с переменной "а" которая                               
    принимает непонятные значения то 0 то какое то большое число.
    ===============================================
               var a: Int 
               var ost: Int //   remains

               a = amount / banknote
               ost = amount-a*banknote
        
               func cashout() {
               for _ in 1...a {
                   print( "\(banknote)")
               }}
                
                func countEdenici() {
                    var edenica: Int // еденицы
                        if ost > 5 {
                        edenica = ost - 5
                            print("5 \n")
                            for _ in 1...edenica {
                                print("1 \n")
                            }
                            if ost == 5 {
                                print("5 \n")
                            }
                        if ost < 5 {
                            for _ in 1...edenica {
                                print("1 \n")}
                            }}}
  

сама ошибка


Ответы (0 шт):