इस समस्या में, हमें दो नंबर दिए गए हैं, N और D। हमारा काम एक C++ में modulo या % ऑपरेटर का उपयोग किए बिना शेष खोजने के लिए प्रोग्राम बनाना है ।
समस्या का विवरण - हमें संख्या N को D से विभाजित करने के बाद जो शेष बचेगा, उसे खोजने की जरूरत है। लेकिन हम इसके लिए मोडुलो या % ऑपरेटर का उपयोग नहीं कर सकते हैं।
समस्या को समझने के लिए एक उदाहरण लेते हैं
इनपुट
N = 53 D = 3
आउटपुट
2
समाधान दृष्टिकोण
शेष को खोजने के लिए, एक सरल तरीका यह है कि N से कम संख्या ज्ञात की जाए जो D का गुणज है। और N से संख्या को सबस्ट्रेट करें। शेष को वापस करने के लिए।
हमारे समाधान की कार्यप्रणाली को दर्शाने वाला कार्यक्रम
उदाहरण
#include <iostream>
using namespace std;
int findRem(int N, int D) {
int i ;
for(i = 0; ;i++) {
if(D * i >= N)
break;
}
return N - (D * (i-1));
}
int main(){
int N = 45, D = 6 ;
cout<<"The remainder after dividing "<<N<<" by "<<D<<" is"<<findRem(N, D);
return 0;
} आउटपुट
The remainder after dividing 45 by 6 is 3
एक अन्य समाधान विभाजन के भागफल के पूर्णांक मान का उपयोग करना है जिसे सी ++ में एक इंट मान में प्रारंभ करके सीधे निकाला जा सकता है। फिर इसे D से गुणा करने पर और N से मान घटाने पर शेषफल मिलता है।
हमारे समाधान की कार्यप्रणाली को दर्शाने वाला कार्यक्रम
उदाहरण
#include <iostream>
using namespace std;
int findRem(int N, int D) {
int Q = N/D;
int R = N - (D * Q);
return R;
}
int main(){
int N = 45, D = 6 ;
cout<<"The remainder after dividing "<<N<<" by "<<D<<" is"<<findRem(N, D);
return 0;
} आउटपुट
The remainder after dividing 45 by 6 is 3