Java dasturlash tilida Math nomli sinf mavjud bo’lib, u murakkab matematik amallarni bajarish uchun ko’plab tayyor matematik funksiyalardan iborat. Jumladan, ikkita sonni kattasi yoki kichigini topish, qiymatlarni yaxlitlash, logarifmik funksiyalar, ildiz topish, va triganometrik hisob-kitoblar shular jumlasidandir.
Math sinfi “java.lang” papkasida joylashgan, ba’zilar o’ylagandek “java.math” papkasida emas. Demak Math sinfining to’liq nomi “java.lang.Math” hisoblanadi.
Math sinfidagi barcha metodlar bir-biridan mustaqil ishlaydi, shuning uchun ularni alohida-alohida quyida o’rganamiz.
Sodda matematik funksiyalar
Math.abs()
Math.abs() funksiyasi unga berilgan parametrning absolyut qiymatini qaytaradi. Absolyut qiymat - parametrning musbat qiymati.
int abs1 = Math.abs(10); // abs1 = 10
int abs2 = Math.abs(-20); // abs2 = 20
Math.abs() metodi butun va kasr sonlarni qabul qiladi:
Math.abs(int)
Math.abs(long)
Math.abs(float)
Math.abs(double)
Math.ceil()
Math.ceil() funksiyasi kasr son qiymatini eng yaqin katta butun qiymatgacha yaxlitlaydi. Yaxlitlangan qiymat double son sifatida qaytariladi:
double ceil = Math.ceil(7.343); // ceil = 8.0
Math.floor()
Math.floor() funksiyasi kasr son qiymatini eng yaqin kichik butun qiymatgacha yaxlitlaydi. Yaxlitlangan qiymat ikki barobar sifatida qaytariladi:
double floor = Math.floor(7.343); // floor = 7.0
Math.min()
Ushbu metod ikkita sonning kichikini qaytaradi:
int min = Math.min(10, 20); // min = 10
Math.max()
Ushbu metod ikkita sonning kattasini qaytaradi:
int max = Math.max(10, 20); // max = 20
Math.round()
Ushbu metod float va double tipidagi kasr sonlarni eng yaqin butun songa (pastki yoki yuqorigi) yaxlitlaydi:
double pastga = Math.round(23.445); // pastga = 23.0
double yuqoriga = Math.round(23.545); // yuqoriga = 24.0
Math.random()
Ushbu metod 0 va 1 orasidan kasr sonni random tanlab beradi. Sintaksisi:
double random = Math.random();
Agar sizga 0 va masalan 100 orasidan son tanlash zarur bo’lsa, natijani tanlash kerak bo’lgan maksimal songa (masalan 100) ko’paytiring.
double random = Math.random() * 100D;
Agar sizga butun son zarur bo’lsa round(), ceil(), floor() metodlaridan foydalaning.
Exponensial va logarifmik funksiyalar
Math.exp() funksiyasi parametr sifatida berilgan qiymat darajasiga ko'tarilgan e (Eyler soni) ni qaytaradi:
double exp1 = Math.exp(1);
System.out.println("exp1 = " + exp1);
double exp2 = Math.exp(2);
System.out.println("exp2 = " + exp2);
Natija quyidagicha:
exp1 = 2.718281828459045
exp2 = 7.38905609893065
Math.log()
Math.log() metodi berilgan parametrning logarifmini qaytaradi. Logarifmning asosi e (Eyler soni). Shunday qilib, Math.log() metodi Math.exp() metodining teskari funksiyasini bildiradi:
double log1 = Math.log(1);
System.out.println("log1 = " + log1);
double log10 = Math.log(10);
System.out.println("log10 = " + log10);
Natija quyidagicha:
log1 = 0.0
log10 = 2.302585092994046
Math.log10()
Math.log10() metodi Math.log() metodi kabi ishlaydi, faqat logarifm asosi e (Eyler raqami) o'rniga 10 bo’ladi. Mana Math.log10() Java misoli:
double log10_1 = Math.log10(1);
System.out.println("log10_1 = " + log10_1);
double log10_100 = Math.log10(100);
System.out.println("log10_100 = " + log10_100);
Natija:
log10_1 = 0.0
log10_100 = 2.0
Math.pow()
Ushbu metod ikkita parameter qabul qiladi. Birinchi parametrni ikkinchi parameter qiymati darajasiga ko’taradi va shu natijani qaytaradi:
double pow2 = Math.pow(2,2);
System.out.println("pow2 = " + pow2); // 4
double pow8 = Math.pow(2,8);
System.out.println("pow8 = " + pow8); // 256
Math.sqrt()
Ushbu metod sonni ikkinchi darajali ildizdan chiqaradi:
double sqrt4 = Math.sqrt(4);
System.out.println("sqrt4 = " + sqrt4); // 2
double sqrt9 = Math.sqrt(9);
System.out.println("sqrt9 = " + sqrt9); // 3
Trigonometrik funksiyalar
Math.PI o’zgarmas bo’lib, ‘pi’ sonining qiymatini saqlaydi. ‘pi’ soni trigonometric funksiyalarni o’rganishda zarur bo’ladi.
Math.sin()
Ushbu metod radian qiymatni qabul qiladi va uning sinus qiymatini qaytaradi:
double sin = Math.sin(Math.PI);
System.out.println("sin = " + sin);
Math.cos()
Ushbu metod radian qiymatni qabul qiladi va uning cosinus qiymatini qaytaradi:
double cos = Math.cos(Math.PI);
System.out.println("cos = " + cos);
Math.tan()
Ushbu metod radian qiymatni qabul qiladi va uning tangens qiymatini qaytaradi:
double tan = Math.tan(Math.PI);
System.out.println("tan = " + tan);