GoSub...Return Statement

একটি সাবরুটিন কল করা হয় যা একটি সাবরুটিন অথবা ফাংশনের একটি লেবেলের মাধ্যমে নির্দেশিত হয়। পরবর্তী প্রদান স্টেটমেন্ট পর্যন্ত লেবেল অনুসরণকারী স্টেটমেন্ট চালানো হয়। পরবর্তীকালে, GoSub স্টেটমেন্ট অনুসরণকারী স্টেটমেন্ট সহ প্রোগ্রাম চালনা বহাল রাখে।

সিনট্যাক্স:

প্যারামিটার দেখুন

প্যারামিটার:

সাব/ফাংশন

স্টেটমেন্ট ব্লক

লেবেল

স্টেটমেন্ট ব্লক

GoSub লেবেল

Exit Sub/Function

লেবেল:

স্টেটমেন্ট ব্লক

প্রদান

End Sub/Function

একটি সাবরুটিন অথবা ফাংশন থেকে একটি লেবেল দ্বারা নির্দেশিত লোক্যাল সাবরুটিন GoSub স্টেটমন্টের সাহায্যে কল করা হয়। লেবেলের নামটি অবশ্যই একটি কোলন (":") দ্বারা শেষ হবে।

সতর্কতামূলক আইকন

যদি প্রোগ্রামটিতে এমন একটি প্রদান স্টেটমেন্ট থাকে যার পূর্বে GoSub বিদ্যমান নয়, তাহলে LibreOffice বেসিক একটি ত্রুটি বার্তা প্রদান করে থাকে। পরবর্তী প্রদান স্টেটমেন্টে পৌঁছার পূর্বে সাব অথবা ফাংশন থেকে একটি প্রোগ্রাম অপসারণ নিশ্চিত করার জন্য Exit Sub অথবা Exit Function ব্যবহার করা হয়।


নিচের উদাহরণটি GoSub এবং Return এর ব্যবহার ব্যাখ্যা করে থাকে। প্রোগ্রামের একটি অংশ দুইবার চালানোর মাধ্যমে, ব্যবহারকারী দ্বারা সন্নিবেশকৃত দুইটি সংখ্যার বর্গমূল গণনা করা হয়।

উদাহরণ:

Sub ExampleGoSub

Dim iInputa As Single

Dim iInputb As Single

Dim iInputc As Single

    iInputa = Int(InputBox("Enter the first number: ","NumberInput"))

    iInputb = Int(InputBox("Enter the second number: ","NumberInput"))

    iInputc=iInputa

    GoSub SquareRoot

    Print "The square root of";iInputa;" is";iInputc

    iInputc=iInputb

    GoSub SquareRoot

    Print "The square root of";iInputb;" is";iInputc

    Exit Sub

SquareRoot:

    iInputc=sqr(iInputc)

    Return

End Sub