Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Ograniczenia z liczbami
Forum PHP.pl > Forum > Przedszkole
Diablos
Z niewyjasnionych przyczyn napisalem sobie skrypt obliczajacy silnie podanej liczby.

  1. <form method="post" action="silnia.php">
  2. <input type="text" name="liczba">
  3. <input type="submit" value="oblicz silnie">
  4. </form>
  5.  
  6. <?php
  7.  
  8.  
  9. if ( isset($_POST['liczba']))
  10. {
  11.  
  12. $liczba = $_POST['liczba'];
  13.  
  14. $silnia = '1';
  15.  
  16. for ( $i = '1'; $i <= $liczba; $i++ )
  17.  {
  18. $silnia *= $i;
  19.  } 
  20.  
  21. echo 'Silnia z liczby ' . $liczba . ' wynosi ' . $silnia;
  22.  
  23. }
  24.  
  25. ?>  



Ogolnie wszystko dziala spox, walek jest jednak wtedy gdy wpisze liczbe powyzej 170. Wynikiem jest 1.#INF. Co to ma znaczyc? ;] Jakies ograniczenia liczb czy co?tongue.gif
nospor
Cytat
Jakies ograniczenia liczb czy co
No stary, pewnie ze tak. PRzeciez typy liczb na kompie mają swoje ograniczenia, a silnia 170 to jest bardzooooo duza liczba wychodzaca poza te ograniczenia smile.gif
dr_bonzo
J.w.

Integer ma zakres do ok. 2mld
Potem php przechodzi na liczby zmiennoprzecinkowe: a #INF to po prostu nieskonczonosc, taki wynik dostajesz gdy przekroczysz zakres liczb zmiennoprzecinkowych, czyli cos ok. 2^2048 (dla podwojnej precyzji)
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.