ज्यामितीय आकृतियों के लिए इंटरफ़ेस: क्षेत्रफल और परिमाप की गणना

TypeScript Medium interfaces

कार्य «ज्यामितीय आकृतियों के लिए इंटरफ़ेस: क्षेत्रफल और परिमाप की गणना»

एक Shape इंटरफ़ेस बनाएं जिसमें getArea() और getPerimeter() विधियाँ हों, जो एक संख्या लौटाती हैं। Circle (जो त्रिज्या लेता है) और Rectangle (जो चौड़ाई और ऊँचाई लेता है) क्लासेज़ को लागू करें जो इस इंटरफ़ेस को इम्प्लीमेंट करते हैं। फिर एक processShape फ़ंक्शन लिखें जो आकृतियों की एक सूची लेता है और प्रत्येक आकृति के लिए उसका क्षेत्रफल और परिमाप एक स्पेस से अलग करके आउटपुट करता है। सभी इनपुट डेटा stdin से पढ़ा जाता है: पहले एक संख्या n (आकृतियों की संख्या), फिर n पंक्तियाँ, जिनमें से प्रत्येक एक आकृति के प्रकार ('circle' या 'rectangle') से शुरू होती है, उसके बाद पैरामीटर होते हैं (वृत्त के लिए त्रिज्या, आयत के लिए चौड़ाई और ऊँचाई)। प्रत्येक आकृति के लिए उसका क्षेत्रफल और परिमाप, दशमलव के बाद दो अंकों तक पूर्णांकित करके, प्रत्येक जोड़ी को एक नई पंक्ति पर आउटपुट करें।

इनपुट प्रारूप

पहली पंक्ति: एक पूर्णांक n (1 ≤ n ≤ 100)। इसके बाद n पंक्तियाँ, प्रत्येक इस प्रारूप में: <type> <parameters>। circle के लिए: radius (पूर्णांक या वास्तविक संख्या)। rectangle के लिए: width height (पूर्णांक या वास्तविक संख्या)।

आउटपुट प्रारूप

n पंक्तियाँ, प्रत्येक में दो संख्याएँ हैं जो स्थान से अलग हैं: क्षेत्रफल और परिमाप, दशमलव के बाद दो अंकों तक पूर्णांकित।

उदाहरण

उदाहरण 1

इनपुट
2 circle 1 rectangle 0.5 0.5
आउटपुट
3.14 6.28 0.25 2.00

उदाहरण 2

इनपुट
5 1 1 2 3 3
आउटपुट
1 2 2 1 3 2
main.ts