Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Objętość ostrosłupa - wysokość na minusie?
Kildyt
post
Post #1





Grupa: Zarejestrowani
Postów: 869
Pomógł: 53
Dołączył: 20.10.2003
Skąd: Przeworsk

Ostrzeżenie: (0%)
-----


Witajcie

Dzisiaj na kartkówce dostaliśmy, wydawać się proste zadanie obliczenia pola całkowitego i objętości ostrosłupa prawidłowego. Krawędź ściany bocznej = 4, a krawędź podstawy = 7.
Problem jest w tym, że wysokość ostrosłupa wychodzi na minusie. (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Sama nauczycielka nie wiedziała o co biega. Taa.. (IMG:http://forum.php.pl/style_emoticons/default/ohmy.gif)


Dla pomocy zamieszczam przygotowany kod na objętość:
  1. <?php
  2.  
  3. $x = 7; // Długość krawędzi podstawy ostrosłupa
  4. $y = 4; // Długość krawędzi bocznej
  5.  
  6.  
  7. // Licz H - wysokośc ostrosłupa
  8.  
  9. $TPb = $x*sqrt(3);
  10. $TPb = (2/3)*$TPb;
  11. $TPb = round($TPb, 2); // Obliczyliśmy 2/3 podstawy ostrosłupa
  12. $TP = $y*$y-$TPb*$TPb; // Twierdzenie Pitagorasa: wynik pod pierwiastkiem wychodzi na minusie
  13.  
  14. echo $TP;
  15.  
  16. $TP = sqrt($TP);
  17. $TP = round($TP, 2);
  18.  
  19. $H = $TP;
  20.  
  21.  
  22. // Licz objętość
  23.  
  24. $Pp = (($x*$x)*sqrt(3))/4;
  25.  
  26. $V = (1/3)*($Pp*$H);
  27.  
  28.  
  29. ?>


Prosimy o pomoc. O co tu chodzi? (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
legorek
post
Post #2





Grupa: Zarejestrowani
Postów: 411
Pomógł: 35
Dołączył: 27.06.2004
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Akurat jestem na etapie nauki do egzaminu z matmy więc odpowiem. Dawno nie miałem do czynienia z geometrią, ale od czego jest wiki (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Ja jestem pewien, że taki ostrosłup nie istnieje.
Dowód będzie trochę łopatologiczny:
Nie napisałeś co jest podstawą ostrosłupa (wiemy tylko że jakiś wielokąt foremny).
1) W tym wypadku, wysokość ostrosłupa można sobie obliczyć ze wzoru b^2 - R^2, gdzie:
b - to długość ściany bocznej
R - promień okręgu opisanego na wielokącie foremnym będącym podstawą
2) R liczymy ze wzoru a/(2*sin(pi/n)), gdzie:
n - liczba boków podstawy
a - długość boku podsawy
Reasumując wzór na wysokość ostrosłupa:
H(n) = b^2 - (a/(2*sin(pi/n)))^2
Po podstawieniu wartości z zadania:
H(n) = (4^2) - ((7 / (2 * sin(pi /n)))^2)
Policzmy wysokość dla ostrosłupa o podstawie trójkąta:
n = 3
(4^2) - ((7 / (2 * sin(pi / 3)))^2) = -0.333333333 Czyli ostrosłup o podstawie trójkąta nie wchodzi w grę.
No dobra, ale co z innymi wielokątami? Zbadajmy sobie przebieg funkcji H(n) w przedziale <3, +oo). Policzmy H'(n),
H'(n) = -49/2/sin(pi/n)^3*cos(pi/n)*pi/n^2, łatwo można sprawdzić, że w interesującym nas przedziale n <3, +oo) pochodna będzie zawsze przyjmować ujemne wartości, tak więc funkcja H(n) jest malejąca. Co za tym idzie dla kolejnych ostrosłupów o podstawie n-kątów foremnych będziemy otrzymywać coraz to mniejsze wysokości.

Reasumując, w zadaniu jest błąd w druku bo jak zamienisz miejscami 4 z 7 wynik wychodzi dobry.

Ten post edytował legorek 21.01.2009, 17:20:31
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 11.10.2025 - 22:17