शुरू करेंमुफ़्त में शुरू करें

Multiple dispatch

Multiple dispatch Julia की एक बड़ी ताकत है, जो आपके Julia प्रोग्राम्स को लचीलापन और स्पीड दोनों देती है। याद रखें, multiple dispatch किसी फंक्शन में पास किए गए आर्ग्युमेंट के टाइप के आधार पर अलग-अलग मेथड चलाने की सुविधा देता है।

वीडियो के उदाहरण में multiple dispatch ने यह दिखाया कि आर्ग्युमेंट का टाइप string है या नहीं, उसके आधार पर अलग मान रिटर्न किया जा सकता है।

function add_values(x, y)
    x + y
end

function add_values(x::String, y::String)
    x * y
end

यह अभ्यास पाठ्यक्रम का हिस्सा है

इंटरमीडिएट Julia

पाठ्यक्रम देखें

अभ्यास निर्देश

  • largest_value नाम का एक फंक्शन बनाइए, जो:
    • अगर इनपुट String हो, तो map का उपयोग करके length फंक्शन को प्रत्येक आर्ग्युमेंट (x, y, z) पर लगाए।
    • अगर इनपुट Bool हो, तो आर्ग्युमेंट्स को ज्यों का त्यों रिटर्न कर दें।
    • अगर इनपुट किसी और टाइप का हो, तो maximum का उपयोग करके सभी मानों में से अधिकतम निकालें।
  • नीचे दिए गए कॉमेंट किए हुए लाइनों (टेस्ट केस) को हटा दें और सुनिश्चित करें कि लॉजिक समझ में आता है!

इंटरैक्टिव व्यावहारिक अभ्यास

इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।

# Create three functions to handle any input, String input, and Bool input
function largest_value(x, y, z)
  maximum((____, ____, ____))
end

function largest_value(x::____, y::____, z::____)
  map(length, (____, ____, ____))
end

function largest_value(x::____, y::____, z::____)
  x, y, z
end

# Un-comment this test case to test your function
#println(largest_value("12", "24", "36"))
कोड संपादित करें और चलाएँ