नीचे some code in C++ है। आप अजगर में -2%5
की तरह कुछ का प्रयास करें परिणाम 3, जबकि तरह C++ सी # (code) और फ्लैश कई अन्य भाषाओं देना -2मॉड्यूलस कैसे काम करता है और अधिकांश भाषाओं की तुलना में पाइथन में यह अलग क्यों है?
क्यों वे देते सकारात्मक है -2 और अन्य की तुलना में एक संस्करण अधिक सही है?
#include <cstdio>
int main(){
printf("%d\n", 2%5);
printf("%d\n", -2%5);
printf("%d\n", -2%77);
printf("%d\n", 2%-77);
printf("%d\n", -2%-77);
}
आउटपुट:
2
-2
-2
2
-2
यह सी ++ 98 (और सी 90) में परिभाषित कार्यान्वयन है। यह सी ++ 11 (और सी-99) में अच्छी तरह परिभाषित है: मॉड्यूलस ऑपरेटर के परिणाम का संकेत लाभांश के संकेत के समान है। पायथन में, परिणाम का एक ही संकेत होता है जैसे divisor करता है। चीजों की व्याख्या करने का एक तरीका सिक्का टॉस का थोड़ा सा है।मेरे लिए सबसे अधिक समझ में आने वाली भाषाएं ऐसी भाषाएं हैं जो दोनों कार्यान्वयन प्रदान करती हैं, इसलिए मैं प्रोग्रामर को चुन सकता हूं जो किसी विशेष संदर्भ में अधिक समझ में आता है। –