> For the complete documentation index, see [llms.txt](https://sananirajabov.gitbook.io/sanani-notes/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://sananirajabov.gitbook.io/sanani-notes/java/riyazi-hesablamalar-v-math-class-i.md).

# Riyazi hesablamalar və Math class-ı

Bəzən elə olurki riyazi hesablamalar etmək istəyirik və bunu +-\*/% kimi operatorlarla edirik, lakin uzun hesablamalar olanda qarışıqlığa səbəb olur. Məsələn, 10 üstü 5 hesablamasını etməl istəyirik və bunu operatorlarla etsək aşağıdakı kimi bir hesablama görərik.

```java
int fivePowerOfTen = 10 * 10 * 10 * 10 * 10;
```

Başqa bir numünə olaraq deyək ki bizim bir metodumuz var və bu iki parametr alır və yuxarıdakı hesablamanı icra edir.&#x20;

```java
static long pow(int number, int power) {
    long calculatedNumber = 1;

    for (int i = 0; i < power; i++) {
        calculatedNumber = calculatedNumber * number;
    }

    return calculatedNumber;
}
```

Yuxarıda gördüyümüz kimi istənilən rəqəmin üstünü tapmaq üçün kiçik bir metod yazmalı olduq. Biz bir çox hesablamalar apara bilərik, məsələn deyək triqonemetrik, loqarifmik hesablamalar və s. Bunları bir-bir sıfırdan yazmaq yerinə biz Javanın Math class-ını istifadı edə bilərik. Math daxilində olan bütün metodlara [burada ](https://docs.oracle.com/javase/8/docs/api/java/lang/Math.html)baxa bilərsiniz.&#x20;

Gəlin bir neçə ən çox istifadə olunan hesablamara baxaq.

### Math.abs()

Bir parametr alır mənfi və ya müsbət, və həmişə müsbət dəyər qaytarır.

```java
int negativeNumber = Math.abs(-100);
System.out.println(negativeNumber);

int positiveNumber = Math.abs(100);
System.out.println(positiveNumber);
```

```
100
100
```

Gördüyümüz kimi mənfi və ya müsbət olmağından aslı olmayaraq müsbət ədəd qaytardı.

### Math.ceil()

Bir double parametr alır və ədədi yuxarı tam ədədə yuvarlaqlaşdırır.

```java
double ceilNumber = Math.ceil(1.15);
System.out.println(ceilNumber);
```

```
2.0
```

### Math.floor()

Bir double parametr alır və ədədi aşağı tam ədədə yuvarlaqlaşdırır.

```java
double floorNumber = Math.floor(1.15);
System.out.println(floorNumber);
```

```
1.0
```

### Math.min()

İki parametr alır və iki ədəddən minimum olanı qaytarır.

```java
int minimumNumber = Math.min(1, 100);
System.out.println(minimumNumber);
```

```
1
```

### Math.max()

İki parametr alır və iki ədəddən maksimum olanı qaytarır.

```java
int maximumNumber = Math.max(1, 100);
System.out.println(maximumNumber);
```

```
100
```

### Math.round()

Bir parametr alır və ən yaxın ədədə doğru yuvarlaqlaşdırır.

```java
double roundedNumberOne = Math.round(1.4);
System.out.println(roundedNumberOne);

double roundedNumberTwo = Math.round(1.5);
System.out.println(roundedNumberTwo);
```

```
1.0
2.0
```

### Math.random()

Parametr almır və random bir ədəd qaytırır. Qaytarılan rəqəm 0.0 və 1.0 aralığındadır. Əgər, 0 və 100 arasında rəqəm istəyiriksə alınan rəqəmi 100-ə vurarıq, 0 və 1000 aralığında istəyirikə 1000-ə vurarıq.

```java
double randomNumberBetweenZeroAndOne = Math.random();
System.out.println(randomNumberBetweenZeroAndOne);

double randomNumberBetweenZeroAndHundred = Math.random() * 100;
System.out.println(randomNumberBetweenZeroAndHundred);
```

```
0.05078392487121186
26.896394286673996
```

### Math.pow()

Iki parametr alır; ədəd və ədədin üstü, və ədədin üstünü hesablanması icra olunur.

```java
double fivePowerOfTwo = Math.pow(2, 5);
System.out.println(fivePowerOfTwo);
```

```
32.0
```

### Math.sqrt()

Bir parametr alır və kök altı hesablanması icra olunur.

```java
double sqrtNumberOne = Math.sqrt(25);
System.out.println(sqrtNumberOne);

double sqrtNumberTwo = Math.sqrt(50);
System.out.println(sqrtNumberTwo);
```

```
5.0
7.0710678118654755
```

Ən çox istifadə olunan Math metodlarına baxdıq, digərlərinə [buradan ](https://docs.oracle.com/javase/8/docs/api/java/lang/Math.html)baxa bilərsiniz.
