2012-11-04 17 views
5

Yeni LearnStreet çevrimiçi eğitimlerini kullanarak Ruby'yi öğrenmeyi deneyin.LearnStreet Yakut Eğitiminde Takıldım. Basit Ruby Kodu

Q & A sisteminden yardım almayı denediniz ancak hiç kimse onlara cevap vermiyor.

"Şimdi uygulamak Can çekilme! yöntemi tanımladıktan sonra, devam edin ve hesaptan 100 dolar çekilme? Belirtilmiş miktarda dengesini tek parametre miktarını alır ve azaltır hesap nesnesi üzerinde yöntem ve dengeyi kontrol et. "

soru mi ve

"İpucu 1 kod @balance = @balance iki ipuçları var -. Miktarı @balance gelen miktarını azaltır

İpucu 2 Sonra diyoruz ! yöntem hesabı nesne üzerinde çekilme - account.withdraw (100) "Benim girişimi

oldu.
def 

account.widthdraw! 

@balance = @balance - amount 

end 

account.withdraw!(100) 

Eksik olduğum herhangi bir fikir var mı?

cevap

3

"Şimdi uygulamak Can çekilme! Yöntemini tanımladıktan sonra, devam edin ve hesaptan 100 dolar çekilme? Belirtilen miktarda dengesini tek parametre miktarını alır ve azaltır hesap nesnesi üzerinde yöntem ve dengeyi kontrol et. " Bir seferde

Bir adım:

  • "Şimdi çekilme hesap nesnede yöntem

    bir parametre miktarını alır
    class Account 
        def withdraw! 
        end 
    end 
    
  • ...

    uygulamak Can
    class Account 
        def withdraw!(amount) 
        end 
    end 
    
  • ve dengeyi azaltır Belirtilen miktar kadar mı?

    class Account 
        def withdraw!(amount) 
        @balance = @balance - amount 
        end 
    end 
    
  • yöntemi tanımladıktan sonra, devam edin ve hesaptan 100 dolar çekilme ve denge kontrol "

    account = Account.new 
    account.withdraw!(100) 
    
2

Sanırım böyle bir şey istersiniz.

class Account 

    def withdraw! amount 
     @balance -= amount 
    end 

end 
+1

@ user1739696 için, '@balance = @balance - amount' ifadesinin çoğu durumda için '@balance - = amount' ile eşdeğerdir. çizin! 'belirli durumlarda çalışacaktır, ancak bu durum için gerçekten doğru değildir.Ayrıca, burada kaçırmış olduğunuz büyük şey 'miktar' parametresiydi. –

+2

@JimDeville, teşekkürler açıklama takdir (@alex Maalesef Cevabınız her yerinde adıma çalışmıyorum). Ben bir Ruby uzmanı değilim, bu yüzden görüşleriniz değerlidir. – alex

0

Bu, bu sorunun cevabı:.

def account.withdraw!(amount) 
    @balance = @balance - amount 
end 
account.withdraw!(100)