Système de dépôt Ruby, problème d'algorithme

question 1

Mettre en œuvre un programme qui remplit les conditions suivantes

J'ai un solde de dépôt de 100 000 yens sur mon compte bancaire et je crée un programme de retrait d'argent. ・ Créez une méthode de retrait pour retirer de l'argent ・ Lorsque vous retirez de l'argent, des frais de 110 yens seront facturés et le message "Vous avez retiré ◯◯ yen. Le solde est de ◯◯ yens" sera affiché (le solde sera le montant après déduction des frais). ・ Si plus que le solde du dépôt est retiré, "Solde insuffisant" sera affiché. ・ Veuillez vous référer aux conseils ci-dessous.


def withdraw(balance, amount)
  fee = 110  #Frais
#Afficher le montant et le solde du retrait, ou afficher comme solde insuffisant si plus que le solde est retiré
end

balance = 100000  #Équilibre
puts "Combien souhaitez-vous retirer? (Cela coûte 110 yens)"
money = gets.to_i
withdraw(balance, money)

C'était une question relativement simple.

Voici la réponse.


def withdraw(balance, amount)
  fee = 110
  if balance >= (amount + fee)
    balance -= (amount + fee)
    puts "#{amount}J'ai retiré le yen. L'équilibre est#{balance}C'est un cercle"
  else
    puts "Solde insuffisant"
  end
end

balance = 100000
puts "Combien souhaitez-vous retirer? (Cela coûte 110 yens)"
money = gets.to_i
withdraw(balance, money)

Si vous suivez la façon de penser dans l'ordre, ① met "Combien voulez-vous retirer? (Cela coûte 110 yens)" ② Avec money = gets.to_i, entrez le montant du retrait avec une commande et remplacez-le par de l'argent ③ L'argument de retrait est défini et passe à la fin de la définition (4) Créez une expression conditionnelle if else car le contenu de sortie diffère selon que l'équilibre est insuffisant. ⑤ En définissant le solde> = (montant + frais) dans l'expression conditionnelle, que le montant du retrait soit faible ou non par rapport au solde exprimé ⑥ En écrivant balance = balance- (montant + frais), le montant du solde est exprimé et affecté au solde. ⑦ Écrivez balance- = (montant + frais) pour garder le code propre. ⑧ Si la balance est insuffisante, met "Balance insuffisante" s'affiche après autre.

J'ai écrit le code comme ci-dessous, mais cela a l'air un peu sale. Pour le moment, le même contenu est sorti.


  if balance <  amount - 110
    puts "Solde insuffisant"
  else

    puts "#{amount}J'ai retiré le yen. L'équilibre est#{balance - amount - 110}C'est un cercle"
  end

Recommended Posts

Système de dépôt Ruby, problème d'algorithme
Problème de rubis ⑦
problème de recherche de rubis
[Ruby] Problème de FizzBuzz
Problème d'API ruby
Algorithme Ruby (injection, définition de méthode)
[Ruby] problème avec l'instruction if
Problème de création de calendrier (problème de pratique amusant avec Ruby)
Ce problème est sobrement difficile ... (Ruby)