মডিউল ১৩-৫+১৩-৬ঃ Sum of Two Values Equal X
কোডঃ
এক্সপ্লেনাশনঃ
এই প্রোগ্রামটির লজিক হলো একটি অ্যারের এর মধ্যে দুটি উপাদান নির্বাচন করে, যাদের যোগফল যদি একটি নির্দিষ্ট মান X এর সমান হয় তবে "YES" প্রিন্ট করা হবে, অন্যথায় "NO" প্রিন্ট করা হবে। প্রোগ্রামের বিবরণ নিচে দেওয়া হয়েছে:
#include<stdio.h>
: এই লাইনেstdio.h
হেডার ফাইল ইমপোর্ট করা হয়েছে, যা ইনপুট এবং আউটপুট সংক্রান্ত ফাংশনগুলি সম্পর্কে তথ্য সরবরাহ করে।int main()
:main()
ফাংশন হল প্রোগ্রামের প্রধান ফাংশন, যা প্রোগ্রাম চালানোর সময় সবচেয়ে প্রথমে কল হয়।{
: মেইন ফাংশনের ব্লক শুরু।int n;
: এই লাইনে একটি পূর্ণসংখ্যা ভ্যারিয়েবলn
ডিক্লেয়ার করা হয়েছে, যেটি অ্যারের উপাদানের সংখ্যা স্টোর করে।scanf("%d",&n);
: এই লাইনে ব্যবহারকারীকে অ্যারের উপাদানের সংখ্যা ইনপুট করতে বলা হয়, এবং সেই সংখ্যাটিn
ভ্যারিয়েবলে সংরক্ষিত হয়।int a[n];
: এই লাইনে একটি অ্যারেa
ডিক্লেয়ার করা হয়েছে, যার আকার নির্দিষ্ট করতে ব্যবহৃত হয়েছে এই সংখ্যার মান দ্বারা।for(int i=0;i<n;i++)
: এই লাইনে লুপ চালানো হয়, যেটি প্রতিটি উপাদানের মান ইনপুট নেয়।{
: লুপের ব্লক শুরু।scanf("%d",&a[i]);
: এই লাইনে অ্যারের প্রতিটি উপাদানের মান ইনপুট নেয়।}
: লুপের ব্লক শেষ।int x;
: এই লাইনে একটি পূর্ণসংখ্যা ভ্যারিয়েবলx
ডিক্লেয়ার করা হয়েছে, যেটি ব্যবহারকারীর দ্বারা ইনপুট হওয়া মান X প্রদান করে।scanf("%d",&x);
: এই লাইনে ব্যবহারকারীকে X এর মান ইনপুট করতে বলা হয়, এবং সেই মানটিx
ভ্যারিয়েবলে সংরক্ষিত হয়।int flag = 0;
: এই লাইনে ফ্ল্যাগ নামক একটি ভ্যারিয়েবল ডিক্লেয়ার করা হয়েছে, যার মান শুরুতে শূন্য হিসেবে নেওয়া হয়েছে।for(int i=0;i<n-1;i++)
: এই লাইনে একটি লুপ চালানো হয়, যা অ্যারের প্রতিটি উপাদানের জোড় বা সংখ্যার যোগফল খুঁজে।{
: লুপের ব্লক শুরু।for(int j=i+1;j<n;j++)
: এই লাইনে একটি ইন্টারনাল লুপ চালানো হয়, যা প্রথম লুপের ইন্ডেক্স পরবর্তী ইন্ডেক্সের পরের থেকে শুরু হয়।{
: ইন্টারনাল লুপের ব্লক শুরু।if(a[i] + a[j] == x)
: এই লাইনে চেক করা হয় যে প্রথম উপাদান এবং দ্বিতীয় উপাদানের যোগফল প্রদত্ত মান X এর সমান কিনা।{
: কন্ডিশনাল ব্লকের শুরু।flag = 1;
: যদি উপরের শর্ত সত্য হয়, তবে ফ্ল্যাগ ভ্যারিয়েবলটির মান পরিবর্তিত হবে এবং প্রোগ্রামের অনুমান করা হবে যে সংখ্যাটি পাওয়া যায়।}
: কন্ডিশনাল ব্লক শেষ।}
: ইন্টারনাল লুপের ব্লক শেষ।}
: প্রধান লুপের ব্লক শেষ।if(flag == 0)
: এই লাইনে পরীক্ষা করা হয় যে ফ্ল্যাগ ভ্যারিয়েবলের মান শূন্য কিনা।{
: কন্ডিশনাল ব্লক শুরু।printf("NO\n");
: যদি উপরের শর্ত সত্য হয়, তবে "NO" প্রিন্ট করা হবে এবং প্রোগ্রাম পূর্বাবস্থায় ফিরে যাবে।}
: কন্ডিশনাল ব্লক শেষ।else
: এই লাইনে কোন কন্ডিশন সত্য না হলে অথবা উপরের শর্তগুলির যে কোন একটি সত্য হলে এই ব্লক সম্পাদিত হবে।{
: ব্লকের শুরু।printf("YES\n");
: যদি উপরের শর্ত মিথ্যা হয়, তবে "YES" প্রিন্ট করা হবে এবং প্রোগ্রাম পূর্বাবস্থায় ফিরে যাবে।}
: ব্লকের শেষ।return 0;
: প্রোগ্রামের সমাপ্তি।}
: মেইন ফাংশনের বড় ব্লক শেষ।
Last updated