कैसे को खोजने के लिए अधिकतम संख्या में पर्ल सरणी

कार्य । पर्ल में, इस कार्यक्रम के एक सरणी है @arr (पहले तीन अक्षरों से शब्द "सरणी"). की जरूरत है खोजने के लिए की अधिकतम संख्या है कि इस सरणी है.

सबसे अच्छा तरीका है इस समस्या को हल करने के लिए है समारोह का उपयोग max पुस्तकालय से List::Util. पुस्तकालय List::Util के साथ आता है पर्ल, इसलिए यदि आप पर्ल, इस लाइब्रेरी के लिए उपलब्ध है इसके अतिरिक्त स्थापित कुछ भी नहीं है ।

यहाँ एक उदाहरण है प्रोग्राम है कि पाता है और प्रदर्शित करता है की अधिकतम संख्या से सरणी में शामिल है, जो की संख्या:

▶ Run
#!/usr/bin/perl

use List::Util qw(max);

my @arr = (1, 2, -100, 8, 0);

print max(@arr);

प्रोग्राम संख्या को प्रदर्शित करेगा 8. (निष्पादित करने के लिए कोड में ब्राउज़र ).

जब आप कनेक्ट करने के लिए एक पुस्तकालय में हम ने संकेत दिया है कि हम समारोह का उपयोग max: use List::Util qw(max);. अगर तुम सिर्फ पुस्तकालय कनेक्ट use List::Util;, कार्यक्रम जारी करेगा एक त्रुटि Undefined subroutine &main::max called at script.pl line 7..

सरणी में कोई तत्व

यदि सरणी है कोई तत्व नहीं है, तो max में वापस आ जाएगी undef. यहाँ नमूना कार्यक्रम जो खाते में लेता है निम्नलिखित के मामले में:

▶ Run
#!/usr/bin/perl

use List::Util qw(max);

my @arr;

my $max = max(@arr);

if (defined $max) {
    print $max;
} else {
    print "Empty array";
}

इस कार्यक्रम में हम परिणाम की दुकान समारोह max में चर, तो परिणाम नहीं है undef, हम परिणाम निकालना इस परिणाम के रूप में, यदि undef, हम परिणाम निकालना स्क्रीन पर पाठ.

यहाँ हम परिणाम की जांच के समारोह max, लेकिन यह संभव हो जाएगा पता करने के लिए की संख्या सरणी में तत्वों और अगर मदों की संख्या 0 है, तो प्रदर्शन तुम क्या करने की जरूरत के मामले में एक खाली सरणी.

काम के मामले में सरणी स्ट्रिंग

जब काम करने के लिए समारोह के साथ max पुस्तकालय से List::Util वहाँ एक सूक्ष्मता है. वास्तव में max वापसी की अधिकतम संख्या सरणी से, और जिसका तत्व देखें संख्या अधिकतम है.

यहाँ एक उदाहरण है । परिणाम max(-100, 'ABC', -4) लाइन होगा 'ABC'. इस तथ्य के कारण होता है कि सांख्यिक मान स्ट्रिंग की 'ABC' शून्य है, शून्य है सबसे बड़ा मूल्य इस सरणी में, तो परिणाम होगा तत्व है के साथ उच्चतम संख्यात्मक मूल्य है । इस उदाहरण में, स्ट्रिंग 'ABC'.

एक और उदाहरण है । परिणाम max(1, 7, '10W') लाइन होगा '10W'.

सरकारी दस्तावेज

यहाँ एक टुकड़ा के उत्पादन perldoc List::Util के  समारोह के बारे में max:

  max
        my $num = max @list;

    Returns the entry in the list with the highest numerical value. If the
    list is empty then "undef" is returned.

        $foo = max 1..10                # 10
        $foo = max 3,9,12               # 12
        $foo = max @bar, @baz           # whatever

अन्य लेख