मैं तुलना करने की कोशिश कर रहा हूं कि एक बिगइंटर (आधार) का मूल्य> किसी अन्य बिगइंटर (प्राइम) का मान है और यदि 'ए' का मान एक के बराबर नहीं है। यदि कोई मान 1 नहीं है, तो इसे लूप से बाहर करना चाहिए। मुझे उनकी तुलना कैसे करनी चाहिए?मैं लूप में किसी शर्त के रूप में उपयोग करने के लिए BigInteger के मानों की तुलना कैसे करूं?
Random ran = new Random();
BigInteger prime = new BigInteger(16,ran);
BigInteger base,a,one;
one = new BigInteger("1");
for (int i = 0; i < 65535; i++){
while (base>prime){
base = new BigInteger(16,ran);
}
a = base.modPow(prime.subtract(one),prime);
System.out.println("a: "+a);
if (a != one){
break;
}
}
ऐसा लगता है कि वह दोनों compareTo की जरूरत है और बराबर होती है। यहां देखें: "... और यदि 'ए' का मान एक के बराबर नहीं है। यदि कोई मान 1 नहीं है, तो इसे लूप से बाहर करना चाहिए।" इसके अलावा, उसका कोड नए बिगइंटर के बीच समानता के लिए एक चेक दिखाता है जिसे उसने "एक" और अन्य गणना मूल्य "ए" कहा था। पुरानी लिंक के लिए खेद है। –
पर्याप्त मेला, मैंने 'if (a! = One)' बिट को याद किया। –