Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Formularz + SubStr
GANJAq
post
Post #1





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 5.10.2008

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


Witam,

Mam pewien problem z zadaniem.

Zadanie:

  1. <?
  2. $liczba = 1278;
  3. $cyfra = substr($liczba, 3, 1);
  4. print "oto czwarta cyfra: $cyfra";
  5. print "<br>";
  6. $cyfra = substr($liczba, 1, 1);
  7. print "oto druga cyfra: $cyfra";
  8. $dlugosc = strlen($liczba);
  9. print "<br>";
  10. print "ta liczba ma $dlugosc cyfr";
  11. ?>

Przepisz go i sprawdź, jak działa. Następnie napisz taki program: użytkownik wpisuje w formularzu jakąś liczbę, a program wyświetla napis "masz (ta liczba) punktów". Słowo punktów ma być w odpowiedniej formie. Przykładowo, jeśli użytkownik wpisze liczbę 0, ma się pojawić napis "masz 0 punktów", a jeśli użytkownik wpisze liczbe 3, ma się pojawić napis "masz 3 punkty".


Pomyślałem, że podzielę daną liczbę i tak zrobiłem.

  1. $pkty = substr($ilepunktow, -1);
  2. print "Masz tyle: $pkty punktow";


I teraz daje Warunek jeżeli IF ($ilepunktow == '0') to żeby wykonało mi te obcięcie np. 1050 -> żeby zostało 0 i wtedy zapamiętało w zmiennej i potem przy wyświetlaniu będzie komunikat, że "zdobyłeś 0 punktów" przy 1 to samo ale już przy 2,3,4 to "zdobyłeś 4 punkty" np. 1054 punkty a nie punktów.

Jeżeli coś nie jasno wytłumaczyłem to proszę o pytania.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
GANJAq
post
Post #2





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 5.10.2008

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


Nie każdy od razu rodzi się programistą nie musisz mnie 'hejtować'. Pozmieniałem tamto co radziłeś i dalej nie idzie...

  1. <?php
  2.  
  3. $ilepunktow = $_POST ['pkt'];
  4.  
  5. function odmiana($ilepunktow)
  6. {
  7. if( $ilepunktow == 0 ) return 'nikt jeszcze nie głosował';
  8. else if( $ilepunktow == 1 ) return 'glosowała 1 osoba';
  9. else {
  10. $zmienna = $ilepunktow % 100;
  11. if( $zmienna > 11 && $zmienna < 15 ) return "głosowało $ilepunktow osób";
  12. else {
  13. $liczba = $zmienna % 10;
  14. switch( $liczba ) {
  15. case 0:
  16. case 1:
  17. case 5:
  18. case 6:
  19. case 7:
  20. case 8:
  21. case 9: return "głosowało $ilepunktow osób";
  22. case 2:
  23. case 3:
  24. case 4:
  25. default:
  26. return "głosowały $ilepunktow osoby";
  27. }
  28. }
  29. }
  30. echo odmiana($ilepunktow);
  31. }
  32.  
  33. ?>
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: 3.10.2025 - 10:33