यहाँ रूसी से हिंदी में अनुवादित प्रोग्रामिंग कार्य का पाठ दिया गया है: विरासत और बहुरूपता: वाहन प्रबंधन प्रणाली
Swift
Hard
classes
कार्य «यहाँ रूसी से हिंदी में अनुवादित प्रोग्रामिंग कार्य का पाठ दिया गया है: विरासत और बहुरूपता: वाहन प्रबंधन प्रणाली»
```html
वाहनों के बेड़े के प्रबंधन के लिए कक्षाओं का एक पदानुक्रम विकसित करें। आधार वर्ग Vehicle में गुण brand (String) और year (Int) हैं, साथ ही एक विधि description() है जो "Vehicle: brand year" प्रारूप की एक स्ट्रिंग लौटाती है। क्लास Car, Vehicle से विरासत प्राप्त करती है और गुण fuelType (String, "petrol", "diesel", "electric" हो सकता है) जोड़ती है तथा description() को इस प्रकार ओवरराइड करती है कि वह "Car: brand year, fuel: fuelType" लौटाए। क्लास Bicycle, Vehicle से विरासत प्राप्त करती है और गुण type (String, "mountain", "road", "city" हो सकता है) जोड़ती है तथा description() को इस प्रकार ओवरराइड करती है कि वह "Bicycle: brand year, type: type" लौटाए। क्लास Fleet, Vehicle की एक सरणी का प्रबंधन करती है और इसमें वाहन जोड़ने के लिए विधि addVehicle(_: Vehicle), सभी वाहनों के विवरण को जोड़ने के क्रम में (प्रत्येक नई पंक्ति में) प्रिंट करने के लिए विधि listDescriptions(), तथा विधि countByYear(year: Int) -> Int है जो निर्दिष्ट वर्ष के वाहनों की संख्या लौटाती है। इनपुट डेटा: पहले एक पूर्णांक N (1 ≤ N ≤ 100) — वाहनों की संख्या। फिर प्रत्येक वाहन के लिए एक प्रकार की स्ट्रिंग ("Car" या "Bicycle") और संबंधित गुण दर्ज किए जाते हैं: brand (बिना रिक्त स्थान वाली स्ट्रिंग), year (1900 से 2023 तक का पूर्णांक), तथा Car के लिए — fuelType (स्ट्रिंग), Bicycle के लिए — type (स्ट्रिंग)। सभी वाहनों को दर्ज करने के बाद, गणना के लिए एक वर्ष (पूर्णांक) रिक्त स्थान द्वारा अलग करके आउटपुट करें। यह गारंटी है कि सभी डेटा सही हैं। पहले listDescriptions() के परिणाम आउटपुट करें, फिर एक नई पंक्ति में निर्दिष्ट वर्ष के वाहनों की संख्या आउटपुट करें।
```
वाहनों के बेड़े के प्रबंधन के लिए कक्षाओं का एक पदानुक्रम विकसित करें। आधार वर्ग Vehicle में गुण brand (String) और year (Int) हैं, साथ ही एक विधि description() है जो "Vehicle: brand year" प्रारूप की एक स्ट्रिंग लौटाती है। क्लास Car, Vehicle से विरासत प्राप्त करती है और गुण fuelType (String, "petrol", "diesel", "electric" हो सकता है) जोड़ती है तथा description() को इस प्रकार ओवरराइड करती है कि वह "Car: brand year, fuel: fuelType" लौटाए। क्लास Bicycle, Vehicle से विरासत प्राप्त करती है और गुण type (String, "mountain", "road", "city" हो सकता है) जोड़ती है तथा description() को इस प्रकार ओवरराइड करती है कि वह "Bicycle: brand year, type: type" लौटाए। क्लास Fleet, Vehicle की एक सरणी का प्रबंधन करती है और इसमें वाहन जोड़ने के लिए विधि addVehicle(_: Vehicle), सभी वाहनों के विवरण को जोड़ने के क्रम में (प्रत्येक नई पंक्ति में) प्रिंट करने के लिए विधि listDescriptions(), तथा विधि countByYear(year: Int) -> Int है जो निर्दिष्ट वर्ष के वाहनों की संख्या लौटाती है। इनपुट डेटा: पहले एक पूर्णांक N (1 ≤ N ≤ 100) — वाहनों की संख्या। फिर प्रत्येक वाहन के लिए एक प्रकार की स्ट्रिंग ("Car" या "Bicycle") और संबंधित गुण दर्ज किए जाते हैं: brand (बिना रिक्त स्थान वाली स्ट्रिंग), year (1900 से 2023 तक का पूर्णांक), तथा Car के लिए — fuelType (स्ट्रिंग), Bicycle के लिए — type (स्ट्रिंग)। सभी वाहनों को दर्ज करने के बाद, गणना के लिए एक वर्ष (पूर्णांक) रिक्त स्थान द्वारा अलग करके आउटपुट करें। यह गारंटी है कि सभी डेटा सही हैं। पहले listDescriptions() के परिणाम आउटपुट करें, फिर एक नई पंक्ति में निर्दिष्ट वर्ष के वाहनों की संख्या आउटपुट करें।
```
इनपुट प्रारूप
पूर्णांक N। फिर N ब्लॉक: प्रकार की स्ट्रिंग, ब्रांड की स्ट्रिंग, पूर्णांक वर्ष, Car के लिए स्ट्रिंग fuelType, Bicycle के लिए स्ट्रिंग type। फिर पूर्णांक yearForCount।
आउटपुट प्रारूप
पहले N पंक्तियाँ विवरणों की (प्रत्येक विवरण एक अलग पंक्ति पर), फिर एक नई पंक्ति पर एक पूर्णांक — वर्ष yearForCount के बराबर वाले वाहनों की संख्या।
उदाहरण
उदाहरण 1
इनपुट
10
आउटपुट
30
उदाहरण 2
इनपुट
6
4 4 1 1 2 3
आउटपुट
1 1 4 4 2 3
main.swift