Korištenje matematike.sin sa stupnjevima

1. Uvod

U ovom kratkom vodiču pogledati ćemo kako izračunati vrijednosti sinusa pomoću Jave Math.sin () funkcija i kako pretvoriti vrijednosti kuta između stupnjeva i radijana.

2. Radijani naspram stupnjeva

Prema zadanim postavkama Java Matematika knjižnica očekuje da vrijednosti trigonometrijskih funkcija budu u radijanima.

Kao podsjetnik, radijani samo su još jedan način izražavanja mjere kuta, a pretvorba je:

dvostruki inRadians = inDegrees * PI / 180; inDegrees = inRadians * 180 / PI;

Java to čini lako s naRadije i do stupnjeva:

dvostruki inRadians = Math.toRadians (inDegrees); dvostruki inDegrees = Math.toDegrees (inRadians);

Kad god koristimo bilo koju Javinu trigonometrijsku funkciju, prvo bismo trebali razmisliti o tome koja je jedinica našeg unosa.

3. Korištenje Matematika.grijeh

Ovo načelo možemo vidjeti na djelu ako bacimo pogled na Matematikau metoda, jedna od mnogih koje Java nudi:

javni statični dvostruki grijeh (dvostruki a)

To je ekvivalentno matematičkoj sinusnoj funkciji i očekuje da će njegov unos biti u radijanima. Dakle, recimo da imamo kut za koji znamo da je u stupnjevima:

dvostruki stupanj = 30;

Prvo ga moramo pretvoriti u radijane:

dvostruki inRadians = Math.toRadians (inDegrees);

A onda možemo izračunati vrijednost sinusa:

dvostruki sinus = Math.sin (inRadians);

Ali, ako znamo da je već u radijanima, tada ne moramo pretvarati:

@Test javna praznina givenAnAngleInDegrees_whenUsingToRadians_thenResultIsInRadians () {double angleInDegrees = 30; dvostruki sinForDegrees = Math.sin (Math.toRadians (angleInDegrees)); // 0,5 dvostruko tridesetDegreeInRadians = 1/6 * Math.PI; dvostruki sinForRadians = Math.sin (threeDegreesInRadians); // 0,5 assertTrue (sinForDegrees == sinForRadians); }

Od tridesetDegreeInRadians već bio u radijanima, nismo ga trebali prvo pretvoriti da bismo dobili isti rezultat.

4. Zaključak

U ovom kratkom članku pregledali smo radijane i stupnjeve, a zatim vidjeli primjer kako raditi s njima pomoću Matematika.grijeh.

Kao i uvijek, pogledajte izvorni kod za ovaj primjer na GitHubu.