Јава је имала неколико напредних апликација за употребу, укључујући рад са сложеним прорачунима у физици, архитектури / дизајнирању структура, рад са мапама и одговарајућим географским ширинама / дужинама итд.
У овом упутству ћете научити:
- Матх.абс
- Матх.роунд
- Матх.цеил & Матх.флоор
- Матх.мин
Све такве апликације захтевају употребу сложених прорачуна / једначина које је досадно ручно изводити. Програмски би такви прорачуни подразумевали употребу логаритама, тригонометрије, експоненцијалних једначина итд.
Сада не можете имати све табеле дневника или тригонометрије чврсто кодиране негде у својој апликацији или подацима. Подаци би били огромни и сложени за одржавање.
Јава нуди врло корисну класу у ту сврху. То је математички јава разред (јава.ланг.Матх).
Ова класа пружа методе за извођење операција као што су експоненцијалне, логаритамске, коренске и тригонометријске једначине.
Погледајмо методе које нуди класа Јава Матх.
Два основна елемента у математици су 'е' (основа природног логаритма) и 'пи' (однос обима круга и његовог пречника). Ове две константе су често потребне у горњим прорачунима / операцијама.
Отуда Јава класа Матх даје ове две константе као двострука поља.
Матх.Е - има вредност 2.718281828459045
Матх.ПИ - има вредност 3.141592653589793
А) Погледајмо доњу табелу која показује основне методе и њихов опис
Метод | Опис | Аргументи |
абс | Даје апсолутну вредност аргумента | Двоструко, плутајуће, инт, дуго |
округли | Приказује затворени инт или лонг (према аргументу) | двоструко или плутајуће |
плафон | Враћа најмањи цели број који је већи или једнак аргументу | Доубле |
под | Враћа највећи цели број који је мањи или једнак аргументу | Доубле |
мин | Враћа најмањи од два аргумента | Двоструко, плутајуће, инт, дуго |
макс | Враћа највећи од два аргумента | Двоструко, плутајуће, инт, дуго |
Испод је примена кода горе наведених метода:
Напомена: Нема потребе за експлицитним увозом јава.ланг.Матх као што је имплицитно увезено. Све његове методе су статичне.
Целобројна променљива
int i1 = 27;int i2 = -45;
Двоструке (децималне) променљиве
double d1 = 84.6;double d2 = 0.45;
Матх.абс
public class Guru99 {public static void main(String args[]) {int i1 = 27;int i2 = -45;double d1 = 84.6;double d2 = 0.45;System.out.println("Absolute value of i1: " + Math.abs(i1));System.out.println("Absolute value of i2: " + Math.abs(i2));System.out.println("Absolute value of d1: " + Math.abs(d1));System.out.println("Absolute value of d2: " + Math.abs(d2));}}Излаз:
Absolute value of i1: 27Absolute value of i2: 45Absolute value of d1: 84.6Absolute value of d2: 0.45
Матх.роунд
public class Guru99 {public static void main(String args[]) {double d1 = 84.6;double d2 = 0.45;System.out.println("Round off for d1: " + Math.round(d1));System.out.println("Round off for d2: " + Math.round(d2));}}Излаз:
Round off for d1: 85Round off for d2: 0
Матх.цеил & Матх.флоор
public class Guru99 {public static void main(String args[]) {double d1 = 84.6;double d2 = 0.45;System.out.println("Ceiling of '" + d1 + "' = " + Math.ceil(d1));System.out.println("Floor of '" + d1 + "' = " + Math.floor(d1));System.out.println("Ceiling of '" + d2 + "' = " + Math.ceil(d2));System.out.println("Floor of '" + d2 + "' = " + Math.floor(d2));}}Излаз:
Ceiling of '84.6' = 85.0Floor of '84.6' = 84.0Ceiling of '0.45' = 1.0Floor of '0.45' = 0.0
Матх.мин
public class Guru99 {public static void main(String args[]) {int i1 = 27;int i2 = -45;double d1 = 84.6;double d2 = 0.45;System.out.println("Minimum out of '" + i1 + "' and '" + i2 + "' = " + Math.min(i1, i2));System.out.println("Maximum out of '" + i1 + "' and '" + i2 + "' = " + Math.max(i1, i2));System.out.println("Minimum out of '" + d1 + "' and '" + d2 + "' = " + Math.min(d1, d2));System.out.println("Maximum out of '" + d1 + "' and '" + d2 + "' = " + Math.max(d1, d2));}}Излаз:
Minimum out of '27' and '-45' = -45Maximum out of '27' and '-45' = 27Minimum out of '84.6' and '0.45' = 0.45Maximum out of '84.6' and '0.45' = 84.6
Б) Погледајмо доњу табелу која нам показује експоненцијалне и логаритамске методе и њихов опис -
Метод | Опис | Аргументи |
екп | Враћа базу природног дневника (е) у моћ аргумента | Доубле |
Пријава | Враћа природни дневник аргумента | двоструко |
Пов | Узима 2 аргумента као улаз и враћа вредност првог аргумента подигнутог у моћ другог аргумента | Доубле |
под | Враћа највећи цели број који је мањи или једнак аргументу | Доубле |
Скрт | Даје квадратни корен аргумента | Доубле |
Испод је примена кода горе наведених метода: (користе се исте променљиве као горе)
public class Guru99 {public static void main(String args[]) {double d1 = 84.6;double d2 = 0.45;System.out.println("exp(" + d2 + ") = " + Math.exp(d2));System.out.println("log(" + d2 + ") = " + Math.log(d2));System.out.println("pow(5, 3) = " + Math.pow(5.0, 3.0));System.out.println("sqrt(16) = " + Math.sqrt(16));}}Излаз:
exp(0.45) = 1.568312185490169log(0.45) = -0.7985076962177716pow(5, 3) = 125.0sqrt(16) = 4.0
Ц) Погледајмо доњу табелу која нам показује Тригонометријске методе и њихов опис -
Метод | Опис | Аргументи |
Грех | Враћа синус наведеног аргумента | Доубле |
Цос | Враћа косинус наведеног аргумента | двоструко |
Тан | Враћа тангенту наведеног аргумента | Доубле |
Атан2 | Претвара правоугаоне координате (к, и) у поларне (р, тхета) и враћа тхета | Доубле |
тоДегреес | Претвара аргументе у степене | Доубле |
Скрт | Даје квадратни корен аргумента | Доубле |
тоРадианс | Претвара аргументе у радијане | Доубле |
Подразумевани аргументи су у радијанима
Испод је примена кода:
public class Guru99 {public static void main(String args[]) {double angle_30 = 30.0;double radian_30 = Math.toRadians(angle_30);System.out.println("sin(30) = " + Math.sin(radian_30));System.out.println("cos(30) = " + Math.cos(radian_30));System.out.println("tan(30) = " + Math.tan(radian_30));System.out.println("Theta = " + Math.atan2(4, 2));}}Излаз:
sin(30) = 0.49999999999999994cos(30) = 0.8660254037844387tan(30) = 0.5773502691896257Theta = 1.1071487177940904
Сада, са горенаведеним, такође можете да дизајнирате свој научни калкулатор у Јави.