बैंक खाते

कल्पना कीजिए कि आप एक शीर्ष स्तरीय बैंक में सॉफ़्टवेयर इंजीनियर हैं। बैंक अपने बैकएंड सिस्टम को बेहतर बनाने पर काम कर रहा है, और आपका काम विभिन्न प्रकार के बैंक खातों का प्रतिनिधित्व करने के लिए नई क्लासेस को डिज़ाइन और इम्प्लिमेंट करना है।
बैंक दो प्रकार के खाते प्रदान करता है: चेकिंग और सेविंग्स। दोनों प्रकार के खातों में ग्राहक धन जमा कर सकते हैं और निकाल सकते हैं। लेकिन प्रत्येक खाते के अपने विशेष गुण हैं। चेकिंग खातों में एक ओवरड्राफ्ट लिमिट होती है, जो ग्राहकों को उनके वर्तमान बैलेंस से अधिक धन निकालने की अनुमति देती है, ओवरड्राफ्ट लिमिट तक। सेविंग्स खातों में वार्षिक प्रतिशत आय (annual percentage yield) के आधार पर ब्याज अर्जित होता है।
आपका काम है तीन Python क्लासेस बनाना: BankAccount, CheckingAccount, और SavingsAccount। इन सभी को शुरुआती balance राशि के साथ इनिशियलाइज़ किया जाता है।
  1. BankAccount क्लास में दो मेथड होने चाहिए: deposit और withdrawdeposit मेथड से बैलेंस में जमा की गई राशि जुड़ जाएगी। withdraw मेथड से बैलेंस में से निकासी की गई राशि घट जाएगी। दोनों ऑपरेशन्स के बाद अंतिम बैलेंस को Balance: <X> फॉर्मेट में प्रिंट करना चाहिए। यदि पर्याप्त धन नहीं है, तो प्रोग्राम Insufficient funds. प्रिंट करे।
  1. CheckingAccount क्लास को BankAccount से इनहेरिट करना चाहिए और एक अतिरिक्त एट्रिब्यूट जोड़ना चाहिए: overdraft_limitCheckingAccount में withdraw मेथड को ओवरराइड किया जाना चाहिए ताकि ग्राहक अपने वर्तमान बैलेंस से अधिक धन ओवरड्राफ्ट लिमिट तक निकाल सकें। यदि ओवरड्राफ्ट लिमिट से अधिक निकासी होती है, तो प्रोग्राम Withdrawal exceeds overdraft limit. प्रिंट करे।
  1. SavingsAccount क्लास भी BankAccount से इनहेरिट करे। इसमें एक अतिरिक्त इनिशियलाइज़ेशन एट्रिब्यूट होना चाहिए: annual_percentage_yield, और एक मेथड calculate_returns जोड़ना चाहिए जो annual_percentage_yield के आधार पर बचत पर रिटर्न की गणना करता है। calculate_returns मेथड रिटर्न को Returns: X फॉर्मेट में प्रिंट करे।
किसी भी खाते का बैलेंस कभी नकारात्मक नहीं होना चाहिए (सिवाय CheckingAccount के, जहाँ यह नकारात्मक ओवरड्राफ्ट लिमिट तक जा सकता है)।
इनपुट
आउटपुट
check = CheckingAccount(500, 100); check.deposit(200); check.withdraw(800); saving = SavingsAccount(500, 0.05); saving.calculate_returns()
Balance: 700 Balance: -100 Returns: 25
 

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue