কম্পিউটার

ঠিকানা দ্বারা ফাংশন কল ব্যবহার করে যোগ এবং বিয়োগ খুঁজে পেতে C++ প্রোগ্রাম


ধরুন আমাদের দুটি সংখ্যা a এবং b আছে। আমাদের একটি ফাংশন সংজ্ঞায়িত করতে হবে যা (a + b) এবং (a - b) উভয়ই গণনা করতে পারে। কিন্তু C++ এ একটি ফাংশন ব্যবহার করে, আমরা সর্বাধিক একটি মান ফেরত দিতে পারি। একাধিক আউটপুট খুঁজে পেতে, আমরা পয়েন্টার ব্যবহার করে ফাংশন আর্গুমেন্টে আউটপুট প্যারামিটার ব্যবহার করতে পারি এবং সেই ভেরিয়েবলের ঠিকানা ব্যবহার করে সেই ফাংশনটিকে কল করতে পারি। এখানে এই সমস্যায় আমরা a+b এর সাথে a এবং a-b এর সাথে b আপডেট করব। যখন আমরা ফাংশনটিকে কল করি তখন আমাদের এই দুটি ভেরিয়েবলের ঠিকানা পাস করতে হবে।

সুতরাং, যদি ইনপুটটি হয় a =15, b =18, তাহলে আউটপুট হবে a + b =33 এবং a - b =-3

এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -

  • একটি ফাংশন সংজ্ঞায়িত করুন solve(), এটি a এবং b

    এর ঠিকানা গ্রহণ করবে
  • temp :=ভেরিয়েবলের মানের সমষ্টি যার ঠিকানা দেওয়া আছে

  • b :=ভেরিয়েবলের মানের পার্থক্য যার ঠিকানা দেওয়া হয়েছে

  • a =temp

উদাহরণ

আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -

#include <iostream>
using namespace std;
int solve(int *a, int *b){
    int temp = *a + *b;
    *b = *a - *b;
    *a = temp;
}
int main(){
    int a = 15, b = 18;
    solve(&a, &b);
    cout << "a + b = " << a << " and a - b = " << b;
}

ইনপুট

15, 18

আউটপুট

a + b = 33 and a - b = -3

  1. C++ ব্যবহার করে উপবৃত্তের ক্ষেত্রফল বের করার জন্য প্রোগ্রাম

  2. n সংখ্যার GCD এবং LCM খুঁজতে C++ প্রোগ্রাম

  3. রিকার্সন ব্যবহার করে একটি সংখ্যার ফ্যাক্টরিয়াল খুঁজে বের করার জন্য C++ প্রোগ্রাম

  4. রিকারশন ব্যবহার করে G.C.D খুঁজে পেতে C++ প্রোগ্রাম