JavaRush /جاوا بلاگ /Random-SD /جاوا ۾ وضاحت ڪيئن ڪجي

جاوا ۾ وضاحت ڪيئن ڪجي

گروپ ۾ شايع ٿيل
هيلو دنيا! ڪنهن شيءِ کي گوگل ڪرڻ يا فورم تي مدد لاءِ پڇڻ هڪ عام ڳالهه آهي جيتوڻيڪ هڪ تجربيڪار پروگرامر لاءِ. پر ترقي ۾ اهڙا موضوع آهن جيڪي ايترو بنيادي ۽ سادو آهن ته هڪ سائي شروعاتي به انهن کي ڄاڻڻ گهرجي. ۽ هتي انهن موضوعن مان هڪ آهي. اڄ اسين ڳالهائينداسين ته ڪيئن exponentiation جاوا ۾ ڪيو ويندو آهي. جاوا ۾ وضاحت ڪيئن ڪجي - 1اچو ته هڪ سيڪنڊ لاءِ تصور ڪريو ته توهان کي هڪ ڪم ڏنو ويو آهي: هڪ خاص درجي تائين هڪ نمبر ڳولهيو. آواز بلڪل سادو، پر حل کي ڪيئن لاڳو ڪجي؟ اچو ته سڀ کان وڌيڪ عام طريقو ۽ ڪيترن ئي متبادلن کي ڏسو. ۽ ان کان اڳ جو اسان حلن ۾ ”ڊوپ“ ڪريون، اچو ته پھريون ياد رکون ته ھڪڙي عدد کي طاقت ڏانھن وڌائڻ ڇا آھي: جاوا ۾ ايڪسپونٽيشن ڪيئن ڪجي - 2طاقت ڏانھن وڌڻ ھڪڙو عمل آھي جنھن ۾ ھڪڙو عدد پاڻ کي ڪيترائي ڀيرا ضرب ڪيو ويندو آھي. جنهن عدد کي ضرب ڪيو وڃي ٿو ان کي بنياد چئبو آهي، ۽ جيترو تعداد ان کي ضرب ڪيو ويندو آهي ان کي ايڪسپونٽ چيو ويندو آهي. خير، بنياد جي هن خود ضرب جي نتيجي کي exponentiation سڏيو ويندو آهي. مثال طور، 8 لاءِ اھو آھي 2 کان ٽين طاقت، جتان 2x2x2=8. هڪ عدد کي ٻئي طاقت ڏانهن وڌائڻ اهو ظاهر ڪري ٿو ته اسان ان کي ٻه ڀيرا فيڪٽر بڻائي رهيا آهيون، ۽ ضابطي جي طور تي هن طاقت کي چورس پاور سڏيو ويندو آهي. اھو آھي، 4 اسڪوائر = 4x4 = 16. تنھنڪري، اسان پنھنجي يادگيري کي تازو ڪيو آھي، ۽ ھاڻي اسان سڌو سنئون جاوا ۾ پائو استعمال ڪرڻ جي طريقن ڏانھن وڃون ٿا - ھڪڙي نموني جو طريقو.
  1. رياضي جي طاقت

    هن مسئلي کي حل ڪرڻ جو آسان طريقو رياضي ڪلاس استعمال ڪرڻ آهي. هي اهو حل آهي جيڪو توهان اڪثر ڪيسن ۾ استعمال ڪندا.

    Как выполнить возведение в степень в Java - 3

    رياضي ڪلاس ۾ ٽريگونوميٽري، جاميٽري، ۽ رياضي جي ٻين پهلوئن سان لاڳاپيل طريقا شامل آهن. ان ۾، طريقا جامد طور تي لاڳو ڪيا ويا آھن، تنھنڪري توھان انھن کي فوري طور تي ڪال ڪري سگھو ٿا رياضي ڪلاس جي نالي سان بغير ڪنھن ڪلاس شئي کي ٺاھيو.

    توفيق ڇا نظر اچي ٿو:

    public static int pow(int value, int powValue) {
       return (int) Math.pow(value, powValue);
    }

    اسان کي ٽائپ ڪاسٽ (int) استعمال ڪرڻو پيو، ڇاڪاڻ ته رياضي ڪلاس جو هي طريقو ٽائپ ڊبل جي قيمت ڏي ٿو (دلائل به ڊبل آهن، پر اتي هڪ امڪاني قسم جي ڪاسٽ استعمال ٿئي ٿي).

    ۽ هاڻي - هڪ بونس: اضافي اختيارن.

  2. عدد جي چورس جو قدر

    اچو ته شروع ڪريون، شايد، آسان شيء سان.

    اسڪوائرنگ جو طريقو هن طرح لکيو ويو آهي:

    public static int pow(int value){
       return value*value;
    }

    مکيه ۾ سڏ:

    public static void main(String[] args) {
       System.out.println(Solution.pow(7));
    }

    اهو سڀ ڪجهه آهي - ڪجھ به پيچيده يا غير ضروري ناهي.

  3. طاقت جو نمبر

    پر چورس نمبر اهو سڀ ڪجهه نه آهي جنهن جي اسان کي ضرورت آهي. گهڻو ڪري اسان جي ڪم ۾ اسان کي هڪ خاص درجي تائين نمبر جي ضرورت پوندي، تنهنڪري هيٺ ڏنل آهي ٿورڙو وڌيڪ پيچيده نسخو، پر هڪ ڪسٽم جاوا پائو قيمت سان:

    public static void main(String[] args) {
       System.out.println(Solution.pow(7, 4));
    }
    
    public static int pow(int value, int powValue) {
       int result = 1;
       for (int i = 1; i <= powValue; i++) {
           result = result * value;
       }
       return result;
    }

    الورورٿم بلڪل سادو آهي: اسان شروعاتي نقطي جو نتيجو مقرر ڪريون ٿا، ۽ پوءِ ان کي پنهنجي قدر سان ضرب ڏيون اوترو ئي ڀيرا لوپ سان powValue رن (powValue تعداد)

  4. ورجائي

    ايندڙ طريقو ٿورو وڌيڪ غير معمولي ٿيندو، پر گهٽ ٿڌو ناهي.

    Как выполнить возведение в степень в Java - 4

    Recursion هڪ خاصيت آهي جيڪا هڪ طريقو پاڻ کي سڏڻ جي اجازت ڏئي ٿي. جاوا ۾، اهڙي هڪ ميکانيزم موجود آهي، ۽ اهڙي طريقن کي مطابق سڏيو ويندو آهي recursive.

    ڪيترائي، جيڪڏهن سڀ نه، الورورٿمڪ مسئلا حل ٿي سگهن ٿا بار بار. اهو هڪ به استثنا نه هوندو، تنهنڪري اچو ته هڪ نظر رکون ته توهان هڪ نمبر کي هڪ خاص طاقت تائين ڪيئن وڌائي سگهو ٿا ٻيهر ورجائي طريقي سان:

    public static int pow(int value, int powValue) {
       if (powValue == 1) {
           return value;
       } else {
           return value * pow(value, powValue - 1);
       }
    }

    جيئن اسان ڏسي سگهون ٿا، اسان وٽ ٻه ڪيس آهن:

    1. ٻيهر نڪرڻ جي حالت، يا ٻين لفظن ۾، جڏهن اسان جي درجي جي قيمت هڪ تائين پهچي ويندي، اسان کي پوئتي ڌڪڻ شروع ڪيو ويندو.
    2. ساڳئي طريقي سان سڏڻ جي نتيجي ۾ قيمت کي ضرب ڪرڻ لاء خود ميڪانيزم، پر powValue - 1 سان.

    يقينن، هاڻي اهو وقت آهي سست طريقن کي ڏسڻ جو، يعني، "باڪس کان ٻاهر" طريقن.

  5. BigInteger

    BigInteger ڪلاس جو بنيادي مقصد صوابديدي سائيز جي عددن کي ذخيرو ڪرڻ آهي، پر ساڳئي وقت ان ۾ مختلف رياضياتي طريقا آهن جيڪي توهان کي انهن وڏن (يا ايتري وڏي نه) انگن سان ڪم ڪرڻ جي اجازت ڏين ٿا.

    Как выполнить возведение в степень в Java - 5

    توهان هن مضمون ۾ BigInteger بابت وڌيڪ پڙهي سگهو ٿا .

    پوءِ جاوا ۾ BigInteger استعمال ڪرڻ جي صورت ۾ ڇا ٿيندو؟

    public static int pow(int value, int powValue) {
       BigInteger a = new BigInteger(String.valueOf(value));
      return a.pow(powValue).intValue();
    }

    بلڪل سادو ۽ بغير ڪنهن مسئلن جي، ڇا اهو ناهي؟

خير، اهو سڀ ڪجهه اڄ لاء آهي! ھاڻي توھان ڄاڻو ٿا مختلف طريقن سان بيان ڪرڻ جي. متفق، هي هڪ ڏکيو موضوع نه هو :)
تبصرا
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION