Pierwiastek bez przybliżenia PHP


(Emblemat) #1

Jak zrobić pierwiastek bez przybliżenia. Piszę np. 9/sqrt(2) i mi resztę pisze, a ja chcę aby napisał 2 pierwiastki z dwóch.

<?php
function przekątnakwadratu($d){
return($d/sqrt(2));
}
echo(przekątnakwadratu(4));


//Gdy dana jest przekąta kwadratu.

?>

Dwa pierwiastek z dwóch - wynik, a on mi przybliżył. Jak to zrobić, aby nie przybliżał. ;]


(enedil) #2

Pierwiastek z dwóch jest liczbą niewymierną, więc trzeba ją przybliżyć.


(Grzelix) #3

To co chcesz zrobić to nie obliczyć wyrażanie, a uprościć.

 

Temat ciężki w implementacji ale zawsze możesz spróbować. Poszukaj w google pod “Simplifying radical expressions”


(Drobok) #4

Co do uproszczania pierwiastków to zawsze możesz zrobić rozkład na czynniki pierwsze, tak jak byś to robił na matematyce.

Swoją drogą twój przykład mógłby się ograniczyć do wyświetlania $a i obrazka symbolizującego sqrt(2) :stuck_out_tongue:


(Grzelix) #5

Jeśli już to $d/2 i obrazek sqrt(2) => dla parzystych

lub floor($d/2) i obrazej sqrt(2)/2 => dla nieparzystych


(Emblemat) #6

WIedziałem, że to można zrobić obrazkiem, ale nie jestem pewien, co do tego, czy PHP nie ma wbudowanej opcji generowania pierwiastka bez przybliżania.

Zamiast pisać 2*1,41… Pisałoby 2V3. Dwa pierwiastki z trzech.