Control structures Fortran प्रोग्रामिंग में महत्वपूर्ण भूमिका निभाते हैं, क्योंकि ये प्रोग्राम के प्रवाह को नियंत्रित करते हैं। इस अध्याय में, हम विभिन्न Control Structures जैसे IF-ELSE, SELECT CASE, और Loops (DO, WHILE) का अध्ययन करेंगे। इन संरचनाओं का उपयोग प्रोग्राम में निर्णय लेने, शर्तों को परखने, और कोड को दोहराने के लिए किया जाता है। यह अध्याय आपको Fortran के साथ अधिक लचीले और शक्तिशाली प्रोग्राम लिखने की क्षमता प्रदान करेगा।
Conditional Statements
Fortran में Conditional Statements का उपयोग शर्तों के आधार पर प्रोग्राम के प्रवाह को नियंत्रित करने के लिए किया जाता है। Conditional Statements का उपयोग करके आप अपने प्रोग्राम को विभिन्न परिस्थितियों के अनुसार निर्णय लेने की क्षमता दे सकते हैं। Fortran में मुख्यतः दो प्रकार की Conditional Structures का उपयोग होता है: IF-ELSE स्टेटमेंट और SELECT CASE स्टेटमेंट।
1. IF, ELSE IF, और ELSE स्टेटमेंट्स:
IF स्टेटमेंट का उपयोग तब किया जाता है जब आपको किसी शर्त के आधार पर कुछ कार्यों को निष्पादित करना हो। इसके साथ, आप ELSE IF और ELSE स्टेटमेंट्स का भी उपयोग कर सकते हैं, ताकि विभिन्न शर्तों को परखा जा सके और उसके अनुसार कार्य किया जा सके।
सिंटैक्स:
if (शर्त) then
! कोड तब चलेगा जब शर्त सत्य (true) होगी
else if (दूसरी शर्त) then
! यह कोड तब चलेगा जब दूसरी शर्त सत्य होगी
else
! यह कोड तब चलेगा जब कोई भी शर्त सत्य नहीं होगी
end if
उदाहरण:
program check_number
integer :: num
print *, "कृपया एक संख्या दर्ज करें:"
read *, num
if (num > 0) then
print *, "संख्या धनात्मक है।"
else if (num < 0) then
print *, "संख्या ऋणात्मक है।"
else
print *, "संख्या शून्य है।"
end if
end program check_number
स्पष्टीकरण: इस प्रोग्राम में यूज़र से एक संख्या दर्ज करने के लिए कहा जाता है। फिर IF-ELSE स्टेटमेंट्स का उपयोग करके यह चेक किया जाता है कि संख्या धनात्मक है, ऋणात्मक है, या शून्य है।
2. SELECT CASE स्टेटमेंट:
SELECT CASE स्टेटमेंट का उपयोग तब किया जाता है जब आपके पास एक वेरिएबल हो, जिसकी तुलना आप एक से अधिक मानों के साथ करना चाहते हैं। यह संरचना तब उपयोगी होती है जब कई शर्तों की तुलना करनी हो, और IF-ELSE स्टेटमेंट्स का उपयोग करना जटिल हो जाए।
सिंटैक्स:
select case (वेरिएबल)
case (मान1)
! कोड जब वेरिएबल का मान 'मान1' होगा
case (मान2)
! कोड जब वेरिएबल का मान 'मान2' होगा
case default
! डिफ़ॉल्ट कोड जब कोई शर्त सत्य नहीं होगी
end select
उदाहरण:
program grade_system
integer :: marks
print *, "कृपया अंक दर्ज करें:"
read *, marks
select case (marks)
case (90:)
print *, "श्रेणी: A"
case (80:89)
print *, "श्रेणी: B"
case (70:79)
print *, "श्रेणी: C"
case (60:69)
print *, "श्रेणी: D"
case default
print *, "श्रेणी: F"
end select
end program grade_system
स्पष्टीकरण: इस प्रोग्राम में यूज़र से अंक दर्ज करने के लिए कहा जाता है और फिर SELECT CASE स्टेटमेंट का उपयोग करके उसके अनुसार श्रेणी (Grade) दी जाती है।
Loops
Loops का उपयोग Fortran में कोड के एक हिस्से को बार-बार निष्पादित करने के लिए किया जाता है। जब किसी प्रोग्राम में एक ही कोड को कई बार चलाने की आवश्यकता होती है, तो Loops का उपयोग करना सुविधाजनक और कुशल होता है। Fortran में मुख्यतः दो प्रकार के Loops होते हैं: DO Loop और WHILE Loop। इसके साथ ही, EXIT और CYCLE स्टेटमेंट्स का उपयोग Loops के नियंत्रण के लिए किया जाता है।
1. DO Loop:
DO Loop का उपयोग तब किया जाता है जब आप किसी कोड को एक निश्चित संख्या में बार चलाना चाहते हैं। आप एक काउंटर का उपयोग करके यह निर्धारित कर सकते हैं कि Loop कितनी बार चलना चाहिए।
सिंटैक्स:
do counter = start_value, end_value, step
! Loop के अंदर का कोड
end do
counter: यह वेरिएबल Loop की प्रत्येक पुनरावृत्ति (iteration) में अपने मान को बदलता है।start_value: यह प्रारंभिक मान होता है जहाँ से काउंटर शुरू होता है।end_value: यह अंतिम मान होता है जहाँ Loop समाप्त होता है।step: काउंटर कितने से बढ़ना चाहिए (यह वैकल्पिक है, डिफ़ॉल्ट मान1होता है)।
उदाहरण:
program sum_of_numbers
integer :: i, sum
sum = 0
do i = 1, 10
sum = sum + i
end do
print *, "पहले 10 संख्याओं का योग:", sum
end program sum_of_numbers
स्पष्टीकरण: इस प्रोग्राम में, DO Loop का उपयोग 1 से 10 तक के सभी संख्याओं का योग निकालने के लिए किया गया है। हर बार Loop के चलने पर, i का मान बढ़ता है और उसे sum में जोड़ा जाता है।
2. WHILE Loop:
WHILE Loop का उपयोग तब किया जाता है जब किसी शर्त के सत्य होने तक Loop को चलाना हो। शर्त के असत्य होते ही Loop समाप्त हो जाता है।
सिंटैक्स:
do while (condition)
! Loop के अंदर का कोड
end do
condition: यह शर्त होती है जिसके सत्य होने तक Loop चलता रहेगा।
उदाहरण:
program while_loop_example
integer :: n
n = 1
do while (n <= 5)
print *, "नंबर:", n
n = n + 1
end do
end program while_loop_example
स्पष्टीकरण: इस उदाहरण में, WHILE Loop तब तक चलता है जब तक कि n की मान 5 से कम या बराबर है। हर बार Loop के अंदर n का मान 1 से बढ़ता जाता है।
3. EXIT और CYCLE स्टेटमेंट्स:
EXIT और CYCLE स्टेटमेंट्स का उपयोग Loops के भीतर विशेष परिस्थितियों में किया जाता है, ताकि आप Loop से बाहर निकल सकें या उसे किसी विशेष बिंदु से जारी रख सकें।
EXIT स्टेटमेंट:
EXIT स्टेटमेंट का उपयोग तब किया जाता है जब आपको किसी विशेष शर्त पर Loop से तुरंत बाहर निकलना हो।
उदाहरण:
program exit_example
integer :: i
do i = 1, 10
if (i == 5) exit
print *, "i का मान:", i
end do
print *, "Loop से बाहर निकल गए।"
end program exit_example
स्पष्टीकरण: इस उदाहरण में, जैसे ही i का मान 5 होता है, EXIT स्टेटमेंट के माध्यम से Loop से बाहर आ जाते हैं, और 5 के बाद के नंबरों को प्रिंट नहीं किया जाता है।
CYCLE स्टेटमेंट:
CYCLE स्टेटमेंट का उपयोग Loop के वर्तमान पुनरावृत्ति को छोड़ने और अगली पुनरावृत्ति पर जाने के लिए किया जाता है।
उदाहरण:
program cycle_example
integer :: i
do i = 1, 10
if (i == 5) cycle
print *, "i का मान:", i
end do
end program cycle_example
स्पष्टीकरण: इस उदाहरण में, जब i का मान 5 होता है, CYCLE स्टेटमेंट के कारण उस पुनरावृत्ति को छोड़ दिया जाता है, और अगली पुनरावृत्ति पर चला जाता है। इस प्रकार, 5 को प्रिंट नहीं किया जाता है।
