Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Różnica między cos++ a cos=cos+1
finito
post
Post #1





Grupa: Zarejestrowani
Postów: 110
Pomógł: 0
Dołączył: 16.12.2012

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


Jak daje wykladnik++; to wszystko hula, a jak daję wykladnik=wykladnik+1, to skrypt się dławi. Czemu? Zwłaszcza, że w pierwszym if'ie mam wykladnik=wykladnik-1;

  1. <meta charset="Utf-8" />
  2. <meta name="description" content="Zliczanie wystąpień elementu w tablicy">
  3. <meta name="author" content="Mateusz Kacprzak <mateusz.kacprzak@yandex.ru>">
  4. <script type="text/javascript">
  5.  
  6. function potegowanie(potega,wykladnik)
  7. {
  8. var potega = document.forms['formularz'].p.value;
  9. var wykladnik = document.forms['formularz'].w.value;
  10. var wynik=1;
  11. var n=wykladnik;
  12. if(wykladnik>0)
  13. {
  14. while (wykladnik>0)
  15. {
  16. wynik=wynik*potega;
  17. wykladnik=wykladnik-1;
  18.  
  19. }
  20. }
  21. else if (wykladnik<0)
  22. {
  23. while (wykladnik<0)
  24. {
  25. wynik=wynik*potega;
  26. wykladnik++;
  27. }
  28. wynik=1/wynik;
  29. }
  30. document.getElementById('wynik').innerHTML="Taki jest wynik potegowania ujemnego "+wynik;
  31.  
  32.  
  33. return false;
  34. }
  35.  
  36. </script>
  37. </head>
  38.  
  39.  
  40.  
  41. <form id="formularz" action="">
  42. <br />Podaj podstawę: <input type="text" name="p" />
  43. <br />Podaj wykładnik: <input type="text" name="w" />
  44. <br /><button onclick="return potegowanie()">Oblicz</button>
  45. <p id="wynik"></p>
  46. </form>
  47.  
  48. </body>
  49. </html>
Go to the top of the page
+Quote Post
johny_s
post
Post #2





Grupa: Zarejestrowani
Postów: 594
Pomógł: 122
Dołączył: 17.07.2005
Skąd: P-na

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


w wykladnik=wykladnik+1
dokleja Ci 1 do stringa, a wykladnik++ automatycznie rzutuje na int

możesz spróbowac:
wykladnik=parseInt(wykladnik)+1
Go to the top of the page
+Quote Post
Pyton_000
post
Post #3





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

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


Kod
var wykladnik = document.forms['formularz'].w.value;

To Ci daje w rezultacie String a nie int.

jak chcesz int to:
Kod
var wykladnik = parseInt(document.forms['formularz'].w.value);
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 19.08.2025 - 02:13