Perl Language
नियंत्रण कथन
खोज…
सशर्त,
पर्ल कई प्रकार के सशर्त बयानों का समर्थन करता है (बयान जो बूलियन परिणामों पर आधारित होते हैं)। सबसे आम सशर्त बयान हैं, अगर-और, जब तक, और टर्नरी बयान नहीं हैं। given
कथनों को C- व्युत्पन्न भाषाओं से स्विच-जैसे निर्माण के रूप में पेश किया जाता है और यह Perl 5.10 और इसके बाद के संस्करण में उपलब्ध हैं।
इफ-एल्स स्टेटमेंट्स
एक if-statement की मूल संरचना इस प्रकार है:
if (EXPR) BLOCK
if (EXPR) BLOCK else BLOCK
if (EXPR) BLOCK elsif (EXPR) BLOCK ...
if (EXPR) BLOCK elsif (EXPR) BLOCK ... else BLOCK
सरल अगर-कथनों के लिए, यदि पूर्ववर्ती कोड को निष्पादित या सफल कर सकता है।
$number = 7;
if ($number > 4) { print "$number is greater than four!"; }
# Can also be written this way
print "$number is greater than four!" if $number > 4;
लूप्स
पर्ल कई प्रकार के लूप निर्माणों का समर्थन करता है: / foreach के लिए, जबकि / do-जबकि, और जब तक।
@numbers = 1..42;
for (my $i=0; $i <= $#numbers; $i++) {
print "$numbers[$i]\n";
}
#Can also be written as
foreach my $num (@numbers) {
print "$num\n";
}
जबकि लूप संबंधित ब्लॉक को निष्पादित करने से पहले सशर्त का मूल्यांकन करता है। तो, कभी-कभी ब्लॉक निष्पादित नहीं किया जाता है। उदाहरण के लिए, फ़ाइल कोड $fh
एक खाली फ़ाइल के लिए फ़ाइलहैंड था, या यदि सशर्त से पहले ही समाप्त हो गया था, तो निम्न कोड को कभी भी निष्पादित नहीं किया जाएगा।
while (my $line = readline $fh) {
say $line;
}
do
/ while
और do
/ until
छोरों, दूसरे हाथ पर, सशर्त हर बार ब्लॉक निष्पादित किया जाता है के बाद का मूल्यांकन। तो, एक do
/ while
या एक do
/ until
पाश हमेशा एक बार में कम से कम मार डाला जाता है।
my $greeting_count = 0;
do {
say "Hello";
$greeting_count++;
} until ( $greeting_count > 1)
# Hello
# Hello