class Firma:
def __init__(self, os_strat, maksevoime, volg = 0, vara = 0, sularaha = 0, tasumataArved = 0, ostjateTasumataArved = 0 ):
self.volg= volg
self.vara = vara
self.sularaha= sularaha
self.tasumataArved = tasumataArved
self.ostjateTasumataArved = ostjateTasumataArved
self.maksevoime = maksevoime
self.strat = os_strat
self.laenukolblikkus = laenukolblikkus
def laenukolblikkus(self):
#m=Voimlaused.__subclasses__()
#for m in Voimlaused.__subclasses__():
laenukolblikkus = self.strat.laenukolblikkus(self.tasumataArved, self.maksevoime, self.volg)
laenukolblikkus = (self.maksevoime/ (self.volg + self.tasumataArved))
print("Laebukõlblikkus:",laenukolblikkus)
class Voimlaused:
def laenukolblikkus(self, ostjateTasumataArved, sularaha, maksevoime, volg, tasumataArved, vara):
raise NotImplementedError
class VoimA(Voimlaused):
def laenukolblikkus(self, vara, maksevoime, volg, tasumataArved):
maksevoime = vara
laenukolblikkus = (maksevoime/ (volg + tasumataArved))
return laenukolblikkus
class VoimB(Voimlaused):
def laenukolblikkus(self, ostjateTasumataArved, sularaha, maksevoime, volg, tasumataArved):
maksevoime = ostjateTasumataArved + sularaha
laenukolblikkus = (maksevoime/ (volg + tasumataArved))
return laenukolblikkus
def main():
print("Start")
runA = Firma(VoimA(), 10000, 50000, 5000, 2000, 3000)
runA.laenukolblikkus
print("Laebukõlblikkus:", runA.laenukolblikkus)
runB = Firma(VoimB(), 10000, 50000, 5000, 2000, 3000)
runB.laenukolblikkus
print("Laebukõlblikkus:", runB.laenukolblikkus)
main()# your code goes here
CgpjbGFzcyBGaXJtYToKICBkZWYgX19pbml0X18oc2VsZiwgb3Nfc3RyYXQsIG1ha3Nldm9pbWUsIHZvbGcgPSAwLCB2YXJhID0gMCwgc3VsYXJhaGEgPSAwLCB0YXN1bWF0YUFydmVkID0gMCwgb3N0amF0ZVRhc3VtYXRhQXJ2ZWQgPSAwICk6CiAgICBzZWxmLnZvbGc9IHZvbGcKICAgIHNlbGYudmFyYSA9IHZhcmEKICAgIHNlbGYuc3VsYXJhaGE9IHN1bGFyYWhhCiAgICBzZWxmLnRhc3VtYXRhQXJ2ZWQgPSB0YXN1bWF0YUFydmVkCiAgICBzZWxmLm9zdGphdGVUYXN1bWF0YUFydmVkID0gb3N0amF0ZVRhc3VtYXRhQXJ2ZWQKICAgIHNlbGYubWFrc2V2b2ltZSA9IG1ha3Nldm9pbWUKICAgIHNlbGYuc3RyYXQgPSBvc19zdHJhdAogICAgc2VsZi5sYWVudWtvbGJsaWtrdXMgPSBsYWVudWtvbGJsaWtrdXMKCmRlZiBsYWVudWtvbGJsaWtrdXMoc2VsZik6CiAgI209Vm9pbWxhdXNlZC5fX3N1YmNsYXNzZXNfXygpCiNmb3IgbSBpbiBWb2ltbGF1c2VkLl9fc3ViY2xhc3Nlc19fKCk6CiAgbGFlbnVrb2xibGlra3VzID0gc2VsZi5zdHJhdC5sYWVudWtvbGJsaWtrdXMoc2VsZi50YXN1bWF0YUFydmVkLCBzZWxmLm1ha3Nldm9pbWUsIHNlbGYudm9sZykKICBsYWVudWtvbGJsaWtrdXMgPSAoc2VsZi5tYWtzZXZvaW1lLyAoc2VsZi52b2xnICsgc2VsZi50YXN1bWF0YUFydmVkKSkKICBwcmludCgiTGFlYnVrw7VsYmxpa2t1czoiLGxhZW51a29sYmxpa2t1cykKCgpjbGFzcyBWb2ltbGF1c2VkOgogIGRlZiBsYWVudWtvbGJsaWtrdXMoc2VsZiwgb3N0amF0ZVRhc3VtYXRhQXJ2ZWQsIHN1bGFyYWhhLCBtYWtzZXZvaW1lLCB2b2xnLCB0YXN1bWF0YUFydmVkLCB2YXJhKToKICAgIHJhaXNlIE5vdEltcGxlbWVudGVkRXJyb3IKCmNsYXNzIFZvaW1BKFZvaW1sYXVzZWQpOgogIGRlZiBsYWVudWtvbGJsaWtrdXMoc2VsZiwgdmFyYSwgbWFrc2V2b2ltZSwgdm9sZywgdGFzdW1hdGFBcnZlZCk6CiAgICBtYWtzZXZvaW1lID0gdmFyYQogICAgbGFlbnVrb2xibGlra3VzID0gKG1ha3Nldm9pbWUvICh2b2xnICsgdGFzdW1hdGFBcnZlZCkpCiAgICByZXR1cm4gbGFlbnVrb2xibGlra3VzCgpjbGFzcyBWb2ltQihWb2ltbGF1c2VkKToKICBkZWYgbGFlbnVrb2xibGlra3VzKHNlbGYsIG9zdGphdGVUYXN1bWF0YUFydmVkLCBzdWxhcmFoYSwgbWFrc2V2b2ltZSwgdm9sZywgdGFzdW1hdGFBcnZlZCk6CiAgICBtYWtzZXZvaW1lID0gb3N0amF0ZVRhc3VtYXRhQXJ2ZWQgKyBzdWxhcmFoYQogICAgbGFlbnVrb2xibGlra3VzID0gKG1ha3Nldm9pbWUvICh2b2xnICsgdGFzdW1hdGFBcnZlZCkpCiAgICByZXR1cm4gbGFlbnVrb2xibGlra3VzCgoKZGVmIG1haW4oKToKICBwcmludCgiU3RhcnQiKQogIHJ1bkEgPSBGaXJtYShWb2ltQSgpLCAxMDAwMCwgNTAwMDAsIDUwMDAsIDIwMDAsIDMwMDApCiAgcnVuQS5sYWVudWtvbGJsaWtrdXMKICBwcmludCgiTGFlYnVrw7VsYmxpa2t1czoiLCBydW5BLmxhZW51a29sYmxpa2t1cykKICAKICBydW5CID0gRmlybWEoVm9pbUIoKSwgMTAwMDAsIDUwMDAwLCA1MDAwLCAyMDAwLCAzMDAwKQogIHJ1bkIubGFlbnVrb2xibGlra3VzCiAgcHJpbnQoIkxhZWJ1a8O1bGJsaWtrdXM6IiwgcnVuQi5sYWVudWtvbGJsaWtrdXMpCgoKbWFpbigpIyB5b3VyIGNvZGUgZ29lcyBoZXJl