C প্রোগ্রামিং ভাষায় পাস বাই ভ্যালু বলতে আর্গুমেন্ট হিসেবে মান পাস করাকে বোঝায়।
অ্যালগরিদম
C ভাষায় পাস বাই ভ্যালুর কাজকর্ম ব্যাখ্যা করার জন্য একটি অ্যালগরিদম নিচে দেওয়া হলো।
START Step 1: কল করার ফাংশনটি ঘোষণা করুন। Step 2: ভেরিয়েবল ঘোষণা করুন। Step 3: রানটাইমে দুটি ভেরিয়েবল a,b লিখুন। Step 4: কলিং ফাংশন। step 6-এ যান Step 5: ফলাফল a,b প্রিন্ট করুন। Step 6: কলড ফাংশন swap। i. temp ভেরিয়েবল ঘোষণা ii. Temp = a iii. a = b iv. b = temp STOP
উদাহরণ
পাস বাই ভ্যালু ব্যবহার করে দুটি সংখ্যা সোয়াপ করার C প্রোগ্রাম নিচে দেওয়া হলো −
#includevoid main(){ void swap(int, int); int a, b; printf("2টি সংখ্যা লিখুন"); scanf("%d%d", &a, &b); printf("সোয়াপের আগে a=%d b=%d", a, b); swap(a, b); printf("সোয়াপের পরে a=%d, b=%d", a, b); } void swap(int a, int b){ int t; // নিচের সব স্টেটমেন্টগুলো একই 의미 t = a; // a = (a+b) - (b = a); a = b; // অথবা b = t; // a = a + b; } // b = a - b; // a = a - b;
আউটপুট
উপরোক্ত প্রোগ্রামটি এক্সিকিউট করলে নিচের ফলাফল পাওয়া যায় −
2টি সংখ্যা লিখুন 10 20 সোয়াপের আগে a=10 b=20 সোয়াপের পরে a=10 b=20
পাস বাই ভ্যালু সম্পর্কে আরো জানার জন্য আরেকটি উদাহরণ নিই।
উদাহরণ
কল বাই ভ্যালু বা পাস বাই ভ্যালু ব্যবহার করে প্রতিটি কলের জন্য মান ৫ বাড়াতে C প্রোগ্রাম নিচে দেওয়া হলো −
#includeint inc(int num){ num = num + 5; return num; } int main(){ int a = 10, b, c, d; b = inc(a); // কল বাই ভ্যালু c = inc(b); // কল বাই ভ্যালু d = inc(c); // কল বাই ভ্যালু printf("a value is: %d\n", a); printf("b value is: %d\n", b); printf("c value is: %d\n", c); printf("d value is: %d\n", d); return 0; }
আউটপুট
উপরোক্ত প্রোগ্রামটি এক্সিকিউট করলে নিচের ফলাফল পাওয়া যায় −
a value is: 10 b value is: 15 c value is: 20 d value is: 25