java - How to convert big floats to int -


मैंने java और php में एक प्रोग्राम लिखा था। जिसमें एक लूप चलाता है 64 बार और n से n जोड़ना जारी रखें:

जावा कोड:

  सार्वजनिक स्थिर शून्य मुख्य (स्ट्रिंग [] आर्ग्स) {डबल एन = 1; डबल पी = 1; के लिए (इंट आई = 1; आई & lt; = 64; i ++) {n = n + n; पी = पी + एन; } System.out.println (p); }   

PHP कोड:

  & lt;? php $ n = 1; $ p = 0; ($ i = 1; $ i & lt; = 64; $ i ++) के लिए {$ n = $ n + $ n; $ p = $ p + $ n; } गूंज ($ p); ? & Gt;   

और इनमें से दोनों का आउटपुट है:

3.6893488147419E + 19

अब मैं जानना चाहता हूं क्या यह बड़ा फ्लोट को बदलना संभव है? यदि हां, तो कैसे दोनों भाषाओं में।

मैं इस प्रकार का उपयोग करेगा,

  सार्वजनिक स्थिर शून्य मुख्य (स्ट्रिंग [] आर्ग्स) {BigInteger n = BigInteger.ONE; BigInteger p = BigInteger.ONE; के लिए (int i = 1; i & lt; = 64; i ++) {n = n.add (n); p = p.add (n); } System.out.println (p); }   

आउटपुट है

  36893488147419103231   

संपादित करें आपकी टिप्पणी के आधार पर, आप वास्तव में कुछ और पसंद करना चाहता था -

  बिगइन्टेगर n = बिगइंटेर। BigInteger p = BigInteger.ZERO; बिगइंटेगर TWO = नया बिगइन्टेगर ("2"); के लिए (इंट आई = 1; आई & lt; = 64; i ++) {स्ट्रिंगबिइल्डर एस.बी. = नया स्ट्रिंगबिल्डर (); Sb.append ("वर्ग # के लिए:" + i); sb.append (", वर्ग पर अनाज:" + n); p = p.add (n); N = n.multiply (TWO); Sb.append (", कुल रनिंग:" + p); Println (sb.toString ()); }    

Comments

Popular posts from this blog

Verilog Error: output or inout port "Q" must be connected to a structural net expression -

jasper reports - How to center align barcode using jasperreports and barcode4j -

c# - ASP.NET MVC - Attaching an entity of type 'MODELNAME' failed because another entity of the same type already has the same primary key value -