ক) নন ভোলাটাইল মেমোরি কী?
যে মেমোরিতে বিদ্যুৎ সরবরাহ বন্ধ হলেও সংরক্ষিত তথ্য মুছে যায় না, তাকে নন-ভোলাটাইল মেমোরি (Non-volatile Memory) বলা হয়। যেমন: ROM, হার্ডডিস্ক, পেনড্রাইভ ইত্যাদি।
খ) অবজেক্ট অরিয়েন্টেড প্রোগ্রামিং ল্যাঙ্গুয়েজটি ব্যাখ্যা কর।
অবজেক্ট অরিয়েন্টেড প্রোগ্রামিং (OOP) হলো এমন এক ধরনের প্রোগ্রামিং মডেল যা ডেটা এবং ফাংশনকে একটি 'অবজেক্ট'-এর মধ্যে বিন্যস্ত করে।
এর প্রধান বৈশিষ্ট্যগুলো হলো:
১. এটি ক্লাস (Class) এবং অবজেক্ট (Object) ধারণার ওপর ভিত্তি করে তৈরি।
২. এতে ইনহেরিটেন্স, পলিমরফিজম এবং এনক্যাপসুলেশনের মতো বৈশিষ্ট্য থাকে যা কোড পুনরায় ব্যবহারের সুবিধা দেয়।
৩. C++, Java, Python ইত্যাদি জনপ্রিয় অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং ভাষা।
গ) উদ্দীপকে উল্লিখিত ধারাটির ফ্লোচার্ট
উদ্দীপকের ধারাটি হলো: $2^2 + 4^2 + 6^2 + \dots + N^2$। এর যোগফল নির্ণয়ের ফ্লোচার্ট নিচে দেওয়া হলো:
১.
শুরু: প্রোগ্রাম শুরু করি।
২.
ইনপুট: N এর মান গ্রহণ করি।
৩.
ইনিশিয়ালাইজেশন: sum = 0 এবং i = 2 ধরি।
৪.
প্রসেস: $\sum = \sum + (i \times i)$ হিসাব করি।
৫.
ইনক্রিমেন্ট: i এর মান ২ বৃদ্ধি করি ($i = i + 2$)।
৬.
সিদ্ধান্ত: যদি $i \le N$ হয়, তবে পুনরায় ধাপ ৪-এ ফিরে যাই। না হলে পরবর্তী ধাপে যাই।
৭.
আউটপুট: sum প্রিন্ট করি।
৮.
শেষ: প্রোগ্রাম শেষ করি।
ঘ) do-while loop ব্যবহার করে ধারাটির C-প্রোগ্রাম
নিচে উদ্দীপকের ধারাটির যোগফল নির্ণয়ের জন্য
do...while লুপ সম্বলিত প্রোগ্রামটি দেওয়া হলো:
#include <stdio.h>
int main() {
int i = 2, N;
long long sum = 0; // বড় মানের যোগফলের জন্য long long ব্যবহার করা হয়েছে
printf("Enter the value of N: ");
scanf("%d", &N);
if (N < 2) {
printf("Sum is: 0\n");
} else {
do {
sum = sum + (i * i);
i = i + 2;
} while (i <= N);
printf("The sum of the series: %lld\n", sum);
}
return 0;
}বিশ্লেষণ:
১.
ইনিশিয়ালাইজেশন: লুপের বাইরে i = 2 এবং sum = 0 নির্ধারণ করা হয়েছে।
২.
লুপের কাজ:do ব্লকের ভেতর প্রথমে বর্গের যোগফল নির্ণয় করা হয় এবং i এর মান বাড়ানো হয়।
৩.
শর্ত যাচাই: লুপের শেষে
while(i <= N) শর্তটি পরীক্ষা করা হয়। শর্ত সত্য হওয়া পর্যন্ত লুপটি বারবার চলতে থাকে।
৪.
বৈশিষ্ট্য:do...while লুপের বিশেষত্ব হলো, শর্ত মিথ্যা হলেও এটি অন্তত একবার কার্যকর হয়।