কম্পিউটার

C++ এ বড় সংখ্যাকে r দ্বারা ভাগ করা হলে অবশিষ্টাংশ খুঁজে বের করার প্রোগ্রাম


এই সমস্যায়, আমাদের একটি স্ট্রিং নম্বর দেওয়া হয়েছে যা একটি বড় সংখ্যা এবং একটি পূর্ণসংখ্যা R। আমাদের কাজ হল একটি অবশিষ্ট খুঁজে বের করার প্রোগ্রাম তৈরি করা যখন বড় সংখ্যাকে C++ এ r দ্বারা ভাগ করা হয় .

সমস্যা বর্ণনা − যখন স্ট্রিং দ্বারা সংজ্ঞায়িত সংখ্যাটিকে r দ্বারা ভাগ করা হয় তখন আমাদের অবশিষ্টটি খুঁজে বের করতে হবে যা একটি দুই-অঙ্কের সংখ্যা৷

সমস্যাটি বোঝার জন্য একটি উদাহরণ নেওয়া যাক

ইনপুট

num = “123423450942121” r = 54

আউটপুট

7

সমাধান পদ্ধতি

অবশিষ্ট খুঁজে বের করতে, আমাদের অবশ্যই সংখ্যাটি ভাগ করতে হবে। কিন্তু বিভাজক সংখ্যা একটি জটিল প্রক্রিয়া তাই প্রক্রিয়াটি সহজ করার জন্য, আমরা অঙ্ক দ্বারা ডিজিট ভাগ করব। এবং নিম্নলিখিত যে অবশিষ্ট সংরক্ষণ করুন. এই প্রক্রিয়াটি MSB থেকে LSB পর্যন্ত নম্বর ধারণ করা পুরো স্ট্রিংয়ের জন্য চালিয়ে যেতে হবে। এবং শেষ পর্যন্ত বাকিটা মুদ্রিত হয়।

আমাদের সমাধানের কাজ চিত্রিত করার জন্য প্রোগ্রাম

উদাহরণ

#include <iostream>
#include <string.h>
using namespace std;
int calcRem(string num, int R){
   int currDigit, rem = 0;
   for (int i = 0; i < num.length(); i++) {
      currDigit = rem * 10 + (num[i] - '0');
      rem = currDigit % R;
   }
   return rem;
}
int main() {
   string num = "123423450942121";
   int R = 54;
   cout<<"The remainder when large number is divided by r is"<<calcRem(num, R);
   return 0;
}

আউটপুট

The remainder when large number is divided by r is 7

  1. একটি সংখ্যার জোড় গুণনীয়কের যোগফল বের করতে C++ প্রোগ্রাম?

  2. বড় সংখ্যার ফ্যাক্টরিয়াল খুঁজে পেতে C++ প্রোগ্রাম

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

  4. পাইথন প্রোগ্রাম একটি বড় সংখ্যার ফ্যাক্টরিয়াল খুঁজে বের করতে