इस समस्या में, हमें एक स्ट्रिंग num दी गई है जो एक बड़ी संख्या है और एक पूर्णांक R। हमारा कार्य C++ में बड़ी संख्या को r से विभाजित करने पर शेषफल ढूंढने के लिए एक प्रोग्राम बनाना है।
समस्या विवरण
हमें उस संख्या को r से विभाजित करने पर शेषफल ढूंढना है जिसे स्ट्रिंग द्वारा परिभाषित किया गया है, जो एक दो अंकों की संख्या है।
उदाहरण
इनपुट: num = "123423450942121", r = 54
आउटपुट: 7
हल करने का दृष्टिकोण
शेषफल ढूंढने के लिए, हमें स्पष्ट रूप से संख्या को विभाजित करने की आवश्यकता है। लेकिन बड़ी संख्याओं को विभाजित करना एक जटिल प्रक्रिया है इसलिए प्रक्रिया को आसान बनाने के लिए, हम अंक दर अंक विभाजित करेंगे। और आने वाले शेषफल को स्टोर करेंगे। इस प्रक्रिया को पूरे स्ट्रिंग के लिए जारी रखा जाना चाहिए जिसमें MSB से LSB तक संख्या होती है। और अंत में शेषफल प्रिंट किया जाता है।
उदाहरण (C++ कोड)
#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