C প্রোগ্রামিং ভাষাতে আর্গুমেন্ট হিসাবে পাঠানো হয় এমন মানকে পাস বাই ভ্যালু বলা হয়।
অ্যালগরিদম
C ল্যাঙ্গুয়েজে পাস বাই মানের কাজ ব্যাখ্যা করার জন্য নিচে একটি অ্যালগরিদম দেওয়া হল।
START Step 1: Declare a function that to be called. Step 2: Declare variables. Step 3: Enter two variables a,b at runtime. Step 4: calling function jump to step 6. Step 5: Print the result values a,b. Step 6: Called function swap. i. Declare temp variable ii. Temp=a iii. a=b iv. b=temp STOP
উদাহরণ
পাস বাই মান −
ব্যবহার করে দুটি সংখ্যা অদলবদল করার জন্য C প্রোগ্রামটি নীচে দেওয়া হল#include<stdio.h>
void main(){
void swap(int,int);
int a,b;
printf("enter 2 numbers");
scanf("%d%d",&a,&b);
printf("Before swapping a=%d b=%d",a,b);
swap(a,b);
printf("after swapping a=%d, b=%d",a,b);
}
void swap(int a,int b){
int t; // all these statements is equivalent to
t=a; // a = (a+b) – (b =a);
a=b; // or
b=t; // a = a + b;
} // b = a – b;
//a = a – b; আউটপুট
যখন উপরের প্রোগ্রামটি কার্যকর করা হয়, তখন এটি নিম্নলিখিত ফলাফল তৈরি করে -
enter 2 numbers 10 20 Before swapping a=10 b=20 After swapping a=10 b=20
পাস বাই ভ্যালু সম্পর্কে আরও জানতে আরেকটি উদাহরণ নেওয়া যাক।
উদাহরণ
কল বাই ভ্যালু বা পাস বাই ভ্যালু ব্যবহার করে প্রতিটি কলের জন্য 5 দ্বারা মান বৃদ্ধি করার জন্য সি প্রোগ্রামটি নিচে দেওয়া হল −
#include <stdio.h>
int inc(int num){
num = num+5;
return num;
}
int main(){
int a=10,b,c,d;
b =inc(a); //call by value
c=inc(b); //call by value
d=inc(c); //call by value
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