CodeGym /وبلاگ جاوا /Random-FA /استفاده از متد Math.pow() در جاوا
John Squirrels
مرحله
San Francisco

استفاده از متد Math.pow() در جاوا

در گروه منتشر شد
زبان جاوا مجهز به یک کتابخانه جامع برای توابع و عملیات ریاضی است. این کلاس "ریاضی" نامیده می شود و در بسته java.lang قرار دارد . کتابخانه ریاضی شامل روش هایی برای عملیات عددی اساسی، مثلثات، یافتن حداقل حداکثر، تولید اعداد تصادفی و عملیات لگاریتمی است. در آموزش امروز به متد Math.pow() می پردازیم که برای محاسبه توان اعداد با استفاده از پایه و توان استفاده می شود. بیا شروع کنیم. عبارت 'nامین توان a' را می توان از نظر ریاضی به صورت n نوشت . اصطلاحات در عبارات را می توانیم به صورت زیر تعریف کنیم. a - مبنا n - توان نما را در نظر بگیریم. ما می توانیم آن را به عنوان تعداد دفعات تکرار یک عملیات ضرب شناسایی کنیم. مبنا عددی است که در خودش ضرب می شود. استفاده از متد Math.pow() در جاوا - 1اجازه دهید اکنون یک روش جاوا ساده برای محاسبه توان یک عدد ایجاد کنیم. لطفاً توجه داشته باشید که در مثال زیر، دو آرگومان را به متد powerFunction() ارسال می کنیم که به ترتیب پایه و توان هستند.
public class Main {

   public static void main(String[] args) {
       int result = powerFunction(2, 5);
       System.out.println("2 raised to the power of 5 = " + result);
   }

   static int powerFunction(int base, int exponent) {
       int result = 1;
       for (int i = 0; i < exponent; i++) {
           result = base * result;
       }
       return result;
   }
}
اگر کد مثال بالا را اجرا کنیم، 32 برمی گردد. شاید تصور کنید که چرا نمی توانیم به سادگی base^exponent بنویسیم. ما نمی توانیم این کار را انجام دهیم زیرا جاوا هیچ عملگر قدرتی ندارد که بتوانیم از آن در یک خط کد استفاده کنیم. با توجه به کد بالا، بدیهی است که ما باید زمان زیادی را برای نوشتن این روش صرف کنیم. علاوه بر این، اگر بخواهیم توان های بالا را محاسبه کنیم، این روش زمان قابل توجهی برای تکمیل این محاسبات خواهد داشت زیرا ما از حلقه های for استفاده می کنیم. علاوه بر آن، حلقه ها ما را از انجام محاسبات توان با توان های کسری باز می دارند. و این روش پیچیدگی محاسباتی خوبی ندارد، زیرا چندان مطلوب نیست زیرا فضای بیشتری برای بهینه سازی وجود دارد. با توجه به اینکه برنامه نویسان چقدر از قدرت و سایر عملیات ریاضی مکرر استفاده می کنند، در همان روزگار توسعه دهندگان جاوا کتابخانه ای به نام «ریاضی» ایجاد کردند که به تسهیل عملیات ریاضی اختصاص داشت. بنابراین، به جای نوشتن تابع پاور از ابتدا، می توانیم از این کتابخانه که در بسته جاوا لنگ موجود است بهره ببریم.

روش Math.pow چیست و چگونه از آن استفاده کنیم؟

Math.pow را می توان در بسته java.lang به عنوان روشی از کتابخانه ریاضی یافت. برای محاسبه توان اعداد، هم اعداد صحیح و هم دو برابر استفاده می شود. بیایید نحو آن را در نظر بگیریم.
public static double pow(double base, double exponent)
همانطور که در سینتکس می بینیم، متد java.lang.Math.pow () دارای دو آرگومان است. اولی پایه و دومی توان است. این نما نما را به عنوان خروجی خود برمی گرداند . بیایید ببینیم چگونه می توانیم آن را صدا کنیم.

افزایش یک عدد به توان در جاوا با استفاده از Math.pow

بیایید با استفاده از Math.pow مقدار 5 4 را پیدا کنیم .
import java.lang.Math;
public class MyClass{
    public static void main(String []args){
       double answer = Math.pow(5, 4);
// java.lang.Math.pow() method

       System.out.println("5 raised to the power of 4 = " + answer);
    }
}
خروجی 625.0 است. همانطور که می بینید، مقدار آن دو برابر است. اگر نقطه اعشار شما را اذیت می کند، به راحتی می توانیم با ریختن عدد به یک عدد صحیح به صورت زیر از شر آن خلاص شویم. توجه داشته باشید که ما در حال تغییر خط اول در داخل متد اصلی هستیم.
int answer = (int) Math.pow(5, 4);
حالا نتیجه 625 است. بیایید از اعداد کسری هم برای مبنا و هم برای توان استفاده کنیم و سعی کنیم جواب بگیریم. بیایید ببینیم مقدار 1.25 4.5 چقدر است.
import java.lang.Math;

public class MyClass {

   public static void main(String[] args) {
       double answer = Math.pow(1.25, 4.5);
// java.lang.Math.pow() method

       System.out.println("1.25 raised to the power of 4.5 = " + answer);
   }
}
این خروجی 2.729575167846423 است. اگر از ماشین حساب استفاده کنید می بینید که همان جواب را می دهد. قبل از اینکه به بخش بعدی برویم، یک مثال دیگر را مرور می کنیم. ما یک عدد را به توان منفی می‌آوریم و نتایج را با هم مقایسه می‌کنیم. برای این مثال، 4 را به عنوان پایه و -2 را به عنوان توان انتخاب می کنیم.
import java.lang.Math;

public class MyClass{

     public static void main(String []args){
        double answer = Math.pow(4, -2);
// java.lang.Math.pow() method

        System.out.println(answer);
     }
}
ما خروجی 0.0625 را دریافت می کنیم.

مثال سریع: چگونه پاسخ خود را گرد کنید

مثلاً باید مقدار 1.25 4.5 را پیدا کنیم . پاسخ 2.729575167846423 است. اغلب لازم است نتیجه را گرد کنید. بیایید سعی کنیم پاسخی دقیق تا رقم چهارم اعشار بدست آوریم. چگونه انجامش بدهیم؟ اگر فقط به 4 رقم اعشار اول نیاز داشته باشیم چه می شود؟ برای آن می توانیم از متد java.lang.Math.round استفاده کنیم. با این حال، همانطور که Math.round مقدار را به نزدیکترین عدد صحیح گرد می کند، باید آن را در تعداد ارقام اعشار ضرب کنیم و سپس دوباره گرد و تقسیم کنیم.
import java.lang.Math;

public class MyClass{

     public static void main(String []args){
        double answer = Math.pow(1.25, 4.5);
        answer = Math.round(answer*100.0)/100.0;

        System.out.println(answer);
     }

}
خروجی 2.73 است.

نحوه استفاده صحیح از Math.pow

وقتی از متد java.lang.Math.pow استفاده می کنیم ، باید چند نکته را در نظر داشته باشیم.
  1. اگر پارامتر توان صفر باشد، خروجی 1.0 خواهد بود. این به این دلیل است که توان صفر برای هر عددی به عنوان یک تعریف می شود.
  2. اگر پارامتر توان یک باشد، خروجی پارامتر پایه خواهد بود. این به این دلیل است که اگر هر عددی را به توان 1 برسانید، نتیجه همان پایه است.
  3. اگر مبنا منفی/مثبت صفر باشد و پارامتر توان یک عدد منفی باشد، نتیجه Infinity است. (صفرهای منفی می تواند به دلیل گرد شدن اعداد بین صفر و کوچکترین عدد منفی غیرصفر قابل نمایش رخ دهد).
  4. اگر پارامتر توان NaN باشد، خروجی نیز NaN خواهد بود.
بیایید یک مورد را در نظر بگیریم که این وضعیت سوم ممکن است اتفاق بیفتد.
import java.lang.Math;

public class MyClass{

     public static void main(String []args){
        double base = 5;
        double exponent = Double.NaN;

        double answer = Math.pow(base, exponent);

        System.out.println(answer);
     }
}
این NaN خروجی می دهد. بنابراین، اگر کد شما به NaN منجر شود، عاقلانه است که بررسی کنید که آیا آرگومان توان NaN است یا خیر. اگر می‌پرسید NaN چیست، به معنای "عدد نیست" است و نشان می‌دهد که مقدار آن تعریف نشده است. ما بر این باوریم که شما اکنون آماده اید که به کار خود ادامه دهید و ()lang.Math.pow را برای استفاده در برنامه های خود قرار دهید.

نتیجه

متد ()java.lang.Math.pow یک راه عالی برای یافتن آسان قدرت اعداد مختلف، هم اعداد صحیح و هم مقادیر کسری است. بر خلاف روشی که ممکن است خودتان بنویسید، بسیار بهینه شده و برای طیف وسیعی از برنامه های کاربردی حساس زمانی مناسب است. اگرچه همه نتایج را به صورت دو برابری خروجی می‌دهد، اما همیشه می‌توانیم مانند مثال، مقدار را به یک عدد صحیح تبدیل کنیم. علاوه بر این، برای راحتی ما، کتابخانه java.lang.Math روش هایی را برای گرد کردن نتیجه به تعداد ارقام اعشاری ترجیحی ارائه می دهد.
نظرات
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION