JavaRush /Blog Jawa /Random-JV /Kelas Matematika Jawa lan metodee

Kelas Matematika Jawa lan metodee

Diterbitake ing grup
Ing artikel iki, kita bakal menehi ringkesan ringkes babagan kelas Matematika ing basa Jawa. Ayo dadi pirembagan bab cara saka kelas iki lan carane nggunakake. Kelas Math manggon ing paket java.lang lan menehi pesawat saka cara statis kanggo nindakake sawetara petungan matématika beda. Ing ngisor iki minangka conto pitungan sing bisa migunani kanggo kelas Matematika:
  • Pitungan nilai absolut (nilai modulo)
  • Pitungan nilai fungsi trigonometri (sinus, kosinus, lsp)
  • Elevasi kanggo macem-macem derajat
  • Extracting werna saka macem-macem derajat
  • Generasi nomer acak
  • Bunder
  • lsp.
Ing ngisor iki kita bakal nyoba kanggo ndeleng carane kelas Matematika Jawa mbantu ngatasi masalah ing ndhuwur. Kelas Matematika Jawa lan metode - 1Ayo miwiti nganalisa kelas kanthi cara sing ngidini sampeyan ngetung modulo nilai. Cara abs tanggung jawab kanggo iki. Cara iki overloaded lan kelas Math duwe beda ing ngisor iki:
  • abs dobel statis (dobel a)
  • abs float statis (ngambang a)
  • int statis abs (int a)
  • abs dawa statis (dawa a)
Tuladha panganggone:
public static void main(String[] args) {
        System.out.println(Math.abs(-1));      // 1
        System.out.println(Math.abs(-21.8d));  // 21.8
        System.out.println(Math.abs(4532L));   // 4532
        System.out.println(Math.abs(5.341f));  // 5.341
    }

Ngitung nilai fungsi trigonometri

Kelas Matematika ngidini sampeyan ngetung macem-macem fungsi trigonometri - sinus, kosinus, tangen, lan liya-liyane. Daftar lengkap metode bisa ditemokake ing situs web dokumentasi resmi . Ing ngisor iki dhaptar cara iki:
  • dobel dosa statis (dobel a)
  • cos ganda statis (dobel a)
  • tan ganda statis (dobel a)
  • asin dobel statis (dobel a)
  • acos dobel statis (dobel a)
  • atan ganda statis (dobel a)
Metode ngitung: sinus, cosinus, tangen, arcsine, arccosine, arctangent. Saben cara ngetung nilai kanggo sudut `a`. Parameter iki diterusake menyang saben cara lan ing saben kasus diukur ing radian (lan ora ing derajat, kaya sing biasa). Ana rong warta ing kene, apik lan ala. Ayo dadi miwiti karo sing apik. Kelas Matematika duwe cara kanggo ngowahi radian dadi derajat lan derajat dadi radian:
  • dobel statis kanggo Derajat (ganda angrad)
  • radian dobel statis (angdeg dobel)
Ing kene metode toDegrees bakal ngowahi angrad sudut, diukur ing radian, dadi derajat. Cara toRadians, sebaliknya, ngowahi angdeg sudut, diukur ing derajat, dadi radian. Kabar ala iku kedadeyan kanthi sawetara kesalahan. Ing ngisor iki conto ngetung sinus lan kosinus:
public static void main(String[] args) {
        System.out.println(Math.sin(Math.toRadians(0)));
        System.out.println(Math.sin(Math.toRadians(30)));
        System.out.println(Math.sin(Math.toRadians(90)));

        System.out.println(Math.cos(Math.toRadians(0)));
        System.out.println(Math.cos(Math.toRadians(30)));
        System.out.println(Math.cos(Math.toRadians(90)));
    }
Program bakal ngasilake:

0.0
0.49999999999999994
1.0

1.0
0.8660254037844387
6.123233995736766E-17
Sing ora cocog karo tabel sinus lan kosinus, sebagian amarga kesalahan konversi saka derajat dadi radian.

Exponentiation

Kanggo ngunggahake nomer dadi daya, kelas Math nyedhiyakake metode pow, sing nduweni tandha ing ngisor iki:
static double pow(double a, double b)
Cara iki ngunggahake parameter `a` dadi daya `b`. Tuladha:
public static void main(String[] args) {
        System.out.println(Math.pow(1,2)); // 1.0
        System.out.println(Math.pow(2,2)); // 4.0
        System.out.println(Math.pow(3,2)); // 9.0
        System.out.println(Math.pow(4,2)); // 16.0
        System.out.println(Math.pow(5,2)); // 25.0

        System.out.println(Math.pow(1,3)); // 1.0
        System.out.println(Math.pow(2,3)); // 8.0
        System.out.println(Math.pow(3,3)); // 27.0
        System.out.println(Math.pow(4,3)); // 64.0
        System.out.println(Math.pow(5,3)); // 125.0
    }

Ekstraksi Root

Kelas Math nyedhiyakake cara kanggo njupuk werna kothak lan kubus. Cara ing ngisor iki tanggung jawab kanggo prosedur iki:
  • sqrt dobel statis (dobel a)
  • cbrt ganda statis (dobel a)
Metode sqrt njupuk akar kuadrat, lan metode cbrt njupuk akar kubus. Tuladha:
public static void main(String[] args) {
        System.out.println(Math.sqrt(4));   // 2.0
        System.out.println(Math.sqrt(9));   // 3.0
        System.out.println(Math.sqrt(16));  // 4.0

        System.out.println(Math.cbrt(8));   // 2.0
        System.out.println(Math.cbrt(27));  // 3.0
        System.out.println(Math.cbrt(125)); // 5.0
    }

Generasi nomer acak

Kanggo generate nomer acak, kelas Math menehi cara acak. Cara iki ngasilake nomer nyata (pindho) positif acak ing sawetara saka 0,0 kanggo 1,0. Tandha metode katon kaya iki:
public static double random()
Ayo ndeleng conto:
public static void main(String[] args) {
    for (int i = 0; i < 5; i++) {
        System.out.println(Math.random());
    }
}
Sawise nglakokake metode utama, ing ngisor iki ditampilake ing konsol:

0.37057465028778513
0.2516253742011597
0.9315649439611121
0.6346725713527239
0.7442959932755443
Kanthi manipulasi sethitik, sampeyan bisa nggunakake cara acak saka kelas Math diwenehi nomer acak integer dumunung ing sawetara tartamtu. Iki minangka conto fungsi sing njupuk rong argumen min lan max lan ngasilake integer acak sing ana ing sawetara saka min (inklusif) nganti maksimal (inklusif):
static int randomInARange(int min, int max) {
    return  (int) (Math.random() * ((max - min) + 1)) + min;
}
Ayo nulis metode Utama sing bakal nyoba metode randomInARange:
public class MathExample {


    public static void main(String[] args) {
        // Карта, в которой мы будем хранить количество выпадений Howого-то числа
        Map<Integer, Integer> map = new TreeMap<>();

        // За 10000 операций
        for (int i = 0; i < 10000; i++) {

            // Сгенерируем рандомное число от -10 включительно до 10 включительно
            final Integer randomNumber = randomInARange(-10, 10);


            if (!map.containsKey(randomNumber)) {
                // Если карта еще не содержит "выпавшего случайного числа"
                // Положим его в карту с кол-вом выпадений = 1
                map.put(randomNumber, 1);
            } else {
                // Иначе, увеличим количество выпадений данного числа на 1
                map.put(randomNumber, map.get(randomNumber) + 1);
            }
        }

        // Выведем на экран содержимое карты в формате ключ=[meaning]
        for (Map.Entry<Integer, Integer> entry : map.entrySet()){
            System.out.println(String.format("%d=[%d]", entry.getKey(), entry.getValue()));
        }
    }

    static int randomInARange(int min, int max) {
        return  (int) (Math.random() * ((max - min) + 1)) + min;
    }
}
Sawise mbukak cara utama, output bisa katon kaya iki:

-10=[482]
-9=[495]
-8=[472]
-7=[514]
-6=[457]
-5=[465]
-4=[486]
-3=[500]
-2=[490]
-1=[466]
0=[458]
1=[488]
2=[461]
3=[470]
4=[464]
5=[463]
6=[484]
7=[479]
8=[459]
9=[503]
10=[444]

Process finished with exit code 0

Bunder

Kanggo pembulatan angka ing basa Jawa, salah sijine pirantine yaiku metode kelas Matematika. Luwih tepat, cara bunder, langit-langit lan lantai:
  • babak dawa statis (dobel a)
  • bulat int statis (ngambang a)
  • lantai dobel statis (dobel a)
  • langit-langit dobel statis (dobel a)
Cara babak - babak kaya biasane kanggo wong rata-rata. Yen bagean pecahan saka nomer luwih saka utawa padha karo 0,5, banjur nomer bakal dibunderaké munggah, digunakake dibunderaké mudhun. Cara lantai tansah, preduli saka nilai saka bagean pecahan, babak nomer mudhun (menyang tanpa wates negatif). Cara langit-langit, ing nalisir, preduli saka nilai saka bagean pecahan, babak nomer munggah (menyang positif tanpa wates). Ayo ndeleng conto:
public static void main(String[] args) {
    System.out.println(Math.round(1.3)); // 1
    System.out.println(Math.round(1.4)); // 1
    System.out.println(Math.round(1.5)); // 2
    System.out.println(Math.round(1.6)); // 2

    System.out.println(Math.floor(1.3)); // 1.0
    System.out.println(Math.floor(1.4)); // 1.0
    System.out.println(Math.floor(1.5)); // 1.0
    System.out.println(Math.floor(1.6)); // 1.0

    System.out.println(Math.ceil(1.3)); // 2.0
    System.out.println(Math.ceil(1.4)); // 2.0
    System.out.println(Math.ceil(1.5)); // 2.0
    System.out.println(Math.ceil(1.6)); // 2.0
}

Kesimpulan

Ing artikel iki, kita njupuk dipikir entheng ing kelas Math. Kita ndeleng carane nggunakake kelas iki sampeyan bisa:
  • Hitung modulo nilai;
  • Hitung nilai fungsi trigonometri;
  • Mundhakaken nomer kanggo kakuwasan;
  • Extract kothak lan kothak werna;
  • Nggawe nomer acak;
  • Nomer bunder.
Ana akeh cara liyane sing menarik ing kelas iki. Sing bisa ditemokake ing situs web dokumentasi resmi . Inggih, kanggo kenalan pisanan, cara sing kasebut ing ndhuwur cukup cukup.
Komentar
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION