ट्रैक
/
Ruby
Ruby
/
अभ्यास
/
बचत खाता
बचत खाता

बचत खाता

सीखने का अभ्यास

परिचय

मॉड्यूल

अब तक आपने जो भी अभ्यास देखे हैं, उन सबमें क्लास का उपयोग हुआ है। कभी-कभी हमें स्थिति वाले ऑब्जेक्ट बनाने का अतिरिक्त बोझ नहीं चाहिए होता, इसलिए उसके बजाय हम module इस्तेमाल करते हैं।

मॉड्यूल क्लास से बहुत मिलता-जुलता है (दरअसल, ऑब्जेक्ट के पदानुक्रम में Module, Class से ऊपर होता है)। मुख्य अंतर यह है कि हम इंस्टेंस मेथड के बजाय क्लास मेथड इस्तेमाल करते हैं। क्लास मेथड self. से शुरू होते हैं और सीधे मॉड्यूल पर कॉल किए जाते हैं।

उदाहरण के लिए:

module Speaker
  def self.echo(something)
    "#{something} ... #{something}"
  end
end

Speaker.echo("Hello")   #=> "Hello ... Hello"

लूप

Ruby में लूप लिखने के कई तरीके हैं, लेकिन चूँकि सामान्य तौर पर हम लूप के बजाय एन्यूमरेशन इस्तेमाल करते हैं, इसलिए सबसे आम लूप शायद while लूप ही है:

counter = 0

while counter < 5
  counter += 1
end

आप इसके साथी until का भी इस्तेमाल कर सकते हैं

counter = 0

until counter == 5
  counter += 1
end

निर्देश

इस अभ्यास में आप बचत खातों के साथ काम करेंगे। हर साल बचत खाते का बैलेंस ब्याज दर के आधार पर अपडेट किया जाता है। बैंक जो ब्याज दर देता है, वह खाते में जमा रकम यानी उसके बैलेंस पर निर्भर करती है:

  • 1000 डॉलर से कम के ऋणात्मक न होने वाले बैलेंस पर 0.5%।
  • 1000 डॉलर या उससे अधिक और 5000 डॉलर से कम के धनात्मक बैलेंस पर 1.621%।
  • 5000 डॉलर या उससे अधिक के धनात्मक बैलेंस पर 2.475%।
  • ऋणात्मक बैलेंस पर 3.213% (इसका मतलब ऋणात्मक ब्याज)।

आपको तीन काम करने हैं, और हर काम बैलेंस तथा उसकी ब्याज दर से जुड़ा है।

1. ब्याज दर निकालिए

SavingsAccount.interest_rate मेथड लागू कीजिए, जो दिए गए बैलेंस के आधार पर ब्याज दर निकालता है:

SavingsAccount.interest_rate(200.75)
#=> 0.5

ध्यान दीजिए कि लौटाई गई वैल्यू Float का एक इंस्टेंस होती है।

2. सालाना बैलेंस अपडेट निकालिए

SavingsAccount.annual_balance_update मेथड लागू कीजिए। यह ब्याज दर का ध्यान रखते हुए सालाना बैलेंस अपडेट निकालता है:

SavingsAccount.annual_balance_update(200.75)
#=> 201.75375

ध्यान दीजिए कि लौटाई गई वैल्यू Float का एक इंस्टेंस होती है।

3. मनचाहा बैलेंस तक पहुँचने में लगने वाले साल निकालिए

SavingsAccount.years_before_desired_balance मेथड लागू कीजिए, जो मनचाहा बैलेंस तक पहुँचने में लगने वाले सालों की न्यूनतम संख्या निकालता है:

SavingsAccount.years_before_desired_balance(200.75, 214.88)
#=> 14

ध्यान दीजिए कि लौटाई गई वैल्यू Integer का एक इंस्टेंस होती है।

GitHub के ज़रिए संपादित करें यह लिंक एक नई विंडो या टैब में खुलता है
Ruby Exercism

बचत खाता शुरू करने के लिए तैयार हैं?

Exercism पर साइन अप कीजिए और Ruby को 21 कॉन्सेप्ट121 अभ्यास तथा असली इंसानों से मिलने वाली मेंटरिंग के साथ सीखिए और उसमें महारत हासिल कीजिए, वह भी बिल्कुल मुफ्त।