Procedure (পদ্ধতি) হলো প্যাসক্যাল প্রোগ্রামিং ভাষায় একটি ব্লক যা নির্দিষ্ট কাজ সম্পাদন করে, কিন্তু কোনো মান ফেরত দেয় না। এটি একটি কোড ব্লক যা একাধিক স্থানে ব্যবহার করা যেতে পারে, এবং এটি কোডের পুনরাবৃত্তি কমাতে সাহায্য করে। পদ্ধতি প্রোগ্রামে ফাংশনের মতো কাজ করে, কিন্তু ফাংশন থেকে ভিন্ন, পদ্ধতি কোনো মান ফেরত দেয় না।
Procedure এর গঠন
প্যাসক্যাল ভাষায় একটি procedure সাধারণত নিম্নলিখিত গঠন অনুসরণ করে:
procedure ProcedureName(parameter1: type; parameter2: type);
begin
{ Code block }
end;এখানে:
procedureকীওয়ার্ডটি পদ্ধতি ঘোষণা করার জন্য ব্যবহৃত হয়।ProcedureNameহলো পদ্ধতির নাম।parameter1, parameter2হল প্যারামিটার, যা ইনপুট হিসেবে ব্যবহৃত হয়।{ Code block }হল কোড ব্লক যা পদ্ধতির কাজ সম্পাদন করে।
Procedure এর ব্যবহার
Procedure ব্যবহার করতে, প্রথমে একটি পদ্ধতি তৈরি করতে হবে এবং তারপর সেই পদ্ধতিটি প্রোগ্রামের যেকোনো জায়গায় কল (call) করতে হবে।
উদাহরণ: একটি পদ্ধতি যা দুইটি সংখ্যা যোগ করবে
program SumProcedureExample;
procedure AddNumbers(a, b: Integer);
begin
writeln('Sum is: ', a + b);
end;
begin
{ Calling the AddNumbers procedure }
AddNumbers(10, 20); { Output: Sum is: 30 }
end.এখানে:
AddNumbersনামক একটি পদ্ধতি তৈরি করা হয়েছে, যা দুটি পূর্ণসংখ্যা প্যারামিটার নেয় (a এবং b) এবং তাদের যোগফল আউটপুট করে।AddNumbers(10, 20);পদ্ধতিটি কল করা হয়েছে প্রোগ্রামেরbegin...end.ব্লকের মধ্যে।
Procedure এর বৈশিষ্ট্য
- প্যারামিটার (Parameters):
- পদ্ধতি একটি বা একাধিক প্যারামিটার গ্রহণ করতে পারে, যা ফাংশনের ইনপুট হিসেবে কাজ করে।
- প্যারামিটার অপশনাল হতে পারে, অর্থাৎ পদ্ধতি কোনো প্যারামিটার ছাড়া কাজ করতে পারে।
- রিটার্ন ভ্যালু (Return Value):
- একটি পদ্ধতি কোনো মান ফেরত দেয় না। যদি কোনো মান ফেরত দেওয়ার প্রয়োজন হয়, তাহলে Function ব্যবহার করা উচিত।
- Reusability:
- পদ্ধতির একটি প্রধান সুবিধা হল কোড পুনরায় ব্যবহার করা। একই পদ্ধতিটি একাধিক স্থানে কল করা যেতে পারে, যা কোডের পুনরাবৃত্তি কমায়।
- কোনো সাইড এফেক্ট (Side Effects):
- পদ্ধতি কোনো বাহ্যিক পরিবর্তন ঘটাতে পারে, যেমন মান পরিবর্তন বা আউটপুট প্রদর্শন করা। এটি মূলত তাদের ইনপুট প্যারামিটার বা গ্লোবাল ভেরিয়েবল দ্বারা পরিচালিত হয়।
Procedure এর আরও উন্নত ব্যবহার
- প্যারামিটার দিয়ে পদ্ধতি কল করা:
আপনি পদ্ধতির মধ্যে প্যারামিটার ব্যবহার করতে পারেন, যা পদ্ধতিতে আরো গতিশীলতা আনে। - ভেরিয়েবল পরিবর্তন:
পদ্ধতি দ্বারা বাহ্যিক ভেরিয়েবলের মান পরিবর্তন করা সম্ভব। তবে, এটি তখনই সম্ভব যদি প্যারামিটারটিvarকীওয়ার্ডের মাধ্যমে পাঠানো হয়, যাতে প্যারামিটারটি রেফারেন্স হিসেবে কাজ করে।
উদাহরণ: var প্যারামিটার সহ পদ্ধতি
program ProcedureWithVar;
procedure ModifyValue(var x: Integer);
begin
x := x + 5; { x এর মান পরিবর্তন হচ্ছে }
end;
var
num: Integer;
begin
num := 10;
writeln('Before ModifyValue: ', num); { Output: Before ModifyValue: 10 }
ModifyValue(num); { num এর মান 5 বৃদ্ধি পাবে }
writeln('After ModifyValue: ', num); { Output: After ModifyValue: 15 }
end.এখানে:
ModifyValueপদ্ধতিতেvarপ্যারামিটার ব্যবহার করা হয়েছে, যার মাধ্যমে প্যারামিটারxএর মান মূল ভেরিয়েবলে পরিবর্তন হয়।- পদ্ধতিটি কল করার পর
numএর মান ১৫ হয়ে যায়।
সারাংশ
প্যাসক্যাল প্রোগ্রামিং ভাষায় procedure একটি অত্যন্ত শক্তিশালী কৌশল যা কোডের পুনরাবৃত্তি কমায় এবং কোডকে আরও সংগঠিত এবং পরিষ্কার করে তোলে। পদ্ধতিটি বিশেষভাবে বড় প্রোগ্রাম বা মডুলার প্রোগ্রামিংয়ে উপকারী, যেখানে বিভিন্ন ছোট কাজের জন্য আলাদা আলাদা পদ্ধতি ব্যবহার করা হয়।
Read more