Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [HTML][PHP]Obliczanie silni rekurencja
Lukis92
post
Post #1





Grupa: Zarejestrowani
Postów: 23
Pomógł: 0
Dołączył: 17.07.2012

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


Witam.
Mam problem z silnią taki, że nie wiem jak zrobić, aby rezultat wyświetlał się w taki sposób:
Wprowadzam w formularzu 5 i wyskakuje taka odpowiedz z serwera:
Cytat
Silnia z liczby 1 wynosi 1
Silnia z liczby 2 wynosi 2
Silnia z liczby 3 wynosi 6
Silnia z liczby 4 wynosi 24
Silnia z liczby 5 wynosi 120


Oto kod:
  1. <!doctype html>
  2. <meta charset="utf-8">
  3. <title>Dokument bez tytułu</title>
  4. </head>
  5.  
  6. <form action="silnia.php" method="post">
  7. <tr>
  8. <td>Podaj liczbę:</td>
  9. <td><input type="text" name="silnia" value="<?php if(isset($_POST['silnia']) && preg_match('/^\d+$/', $_POST['silnia'])){echo $_POST['silnia'];} ?>"/></td>
  10. </tr>
  11. <tr>
  12. <td><input type="submit" value="Wyślij" /></td>
  13. <td><input type="reset" name="Reset" /></td>
  14. </tr>
  15. </table>
  16. </form>
  17. </body>
  18. </html>


  1. <?php
  2. if(isset($_POST['silnia'])){
  3. $liczba = $_POST['silnia'];
  4.  
  5. function silnia($n)
  6. {
  7. if($n >= 2){
  8. echo 'Silnia z liczby '.$n.' wynosi '.($n * silnia($n-1)).'<br />';
  9. }else{
  10. return 1;
  11. }
  12. }
  13.  
  14. echo silnia($liczba);
  15. }
  16. ?>


I u mnie jest taki rezultat:
Cytat
Silnia z liczby 2 wynosi 2
Silnia z liczby 3 wynosi 0
Silnia z liczby 4 wynosi 0
Silnia z liczby 5 wynosi 0


Proszę was o jakieś wskazówki, podpowiedzi jak rozwiązać ten problem. Może nie rozumiem rekurencji. Sam już nie wiem (IMG:style_emoticons/default/smile.gif)
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: 2.04.2026 - 16:10