![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Przyjaciele php.pl Postów: 660 Pomógł: 0 Dołączył: 28.08.2002 Skąd: Starachowice Ostrzeżenie: (0%) ![]() ![]() |
Zainspirowany jednym z tematów na forum spróbowałem napisać własną funkcję do zamiany liczby na jej słowną reprezentację. Oto do czego doszedłem:
Ponieważ pisałem ją naprędce w pracy ![]() Aha funkcja działa dla przedziału liczbowego od 1 - 999999. |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 2 064 Pomógł: 1 Dołączył: 22.01.2003 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Khem...
1023,43 = dwadzie¶cia trzy tysi±ce czterdzie¶ci trzy 0,43 = tysięcy czterdzie¶ci trzy 1,43 = jeden tysi±c czterdzie¶ci trzy Chciałem zauważyć, że w Polsce używa się , do rozdzielania wartości dziesiętnych od całości ![]() Update: nieważne czy , czy . - i tak źle :-) -------------------- |
|
|
![]()
Post
#3
|
|
![]() Grupa: Przyjaciele php.pl Postów: 660 Pomógł: 0 Dołączył: 28.08.2002 Skąd: Starachowice Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 2 064 Pomógł: 1 Dołączył: 22.01.2003 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Khem khem...
Cytat Khem. Deklaracja funkcji:
string d2w( int liczba ) ale to nigdzie nie było napisane ![]() Z liczbami całkowitymi działa OK ![]() -------------------- |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 59 Pomógł: 0 Dołączył: 26.02.2004 Ostrzeżenie: (0%) ![]() ![]() |
a jak bedzie wyglądał zapis skryptu do pokazania kwoty w zapisie
np 12,50 : a to wynik: dwanascie złotych 50/100 ? -------------------- marko
|
|
|
![]()
Post
#6
|
|
![]() Grupa: Przyjaciele php.pl Postów: 660 Pomógł: 0 Dołączył: 28.08.2002 Skąd: Starachowice Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#7
|
|
![]() Grupa: Przyjaciele php.pl Postów: 2 712 Pomógł: 23 Dołączył: 27.10.2003 Skąd: z kontowni Ostrzeżenie: (0%) ![]() ![]() |
No właśnie bez przesady
![]() -------------------- "Coś się kończy, coś się zaczyna." Andrzej Sapkowski
|
|
|
![]()
Post
#8
|
|
![]() Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
A oto moja wersja funkcji "liczba słownie". Jest akurat w postaci helpera do Kohana ale można ją wykorzystać jako zwykłą funkcję (nie korzysta z żadnych zależności). Mam koncepcję jak napisać to bardziej elegancko ale wpadłem na to trochę za późno
![]()
I przykład działania: Kod 1 jeden
2 dwa 5 pięć 10 dziesięć 11 jedenaście 17 siedemnaście 20 dwadzieścia 21 dwadzieścia jeden 25 dwadzieścia pięć 100 sto 101 sto jeden 102 sto dwa 110 sto dziesięć 111 sto jedenaście 119 sto dziewiętnaście 123 sto dwadzieścia trzy 170 sto siedemdziesiąt 1000 jeden tysiąc 1001 jeden tysiąc jeden 1010 jeden tysiąc dziesięć 1111 jeden tysiąc sto jedenaście 1125 jeden tysiąc sto dwadzieścia pięć 6666 sześć tysięcy sześćset sześćdziesiąt sześć 10000 dziesięć tysięcy 10001 dziesięć tysięcy jeden 10010 dziesięć tysięcy dziesięć 12345 dwanaście tysięcy trzysta czterdzieści pięć 100000 sto tysięcy 100001 sto tysięcy jeden 100011 sto tysięcy jedenaście 120000 sto dwadzieścia tysięcy 111111 sto jedenaście tysięcy sto jedenaście 7654321 siedem milionów sześćset pięćdziesiąt cztery tysiące trzysta dwadzieścia jeden 9876543 dziewięć milionów osiemset siedemdziesiąt sześć tysięcy pięćset czterdzieści trzy 9000001 dziewięć milionów jeden 9999999 dziewięć milionów dziewięćset dziewięćdziesiąt dziewięć tysięcy dziewięćset dziewięćdziesiąt dziewięć |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 1 575 Pomógł: 299 Dołączył: 26.03.2009 Ostrzeżenie: (20%) ![]() ![]() |
http://4programmers.net/PHP/FAQ/Jak_zamien...C5%82own%C4%85_
osiemset czterdzieści jeden miliardów dwieście pięć milionów czterysta osiemdziesiąt sześć tysięcy siedemset pięćdziesiąt pięć -------------------- |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 0 Dołączył: 13.10.2008 Ostrzeżenie: (0%) ![]() ![]() |
2839 - tysiące osiemset trzydzieści dziewięć
po zmodyfikowaniu linijki
na
działa poprawnie, ale nie miałem czasu przetestować czy bez tego ifa na innych liczbach sie nie wykrzacza. Pozdrawiam
Powód edycji: [thek]: Nie odgrzebujemy trupów sprzed roku ;)
|
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 23.11.2010 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Bardzo ladny te classa num ale jak znalesc classa num_Core ? Bardzo prosze o pomoc. Pozdrawiam A oto moja wersja funkcji "liczba słownie". Jest akurat w postaci helpera do Kohana ale można ją wykorzystać jako zwykłą funkcję (nie korzysta z żadnych zależności). Mam koncepcję jak napisać to bardziej elegancko ale wpadłem na to trochę za późno ![]()
I przykład działania: Kod 1 jeden 2 dwa 5 pięć 10 dziesięć 11 jedenaście 17 siedemnaście 20 dwadzieścia 21 dwadzieścia jeden 25 dwadzieścia pięć 100 sto 101 sto jeden 102 sto dwa 110 sto dziesięć 111 sto jedenaście 119 sto dziewiętnaście 123 sto dwadzieścia trzy 170 sto siedemdziesiąt 1000 jeden tysiąc 1001 jeden tysiąc jeden 1010 jeden tysiąc dziesięć 1111 jeden tysiąc sto jedenaście 1125 jeden tysiąc sto dwadzieścia pięć 6666 sześć tysięcy sześćset sześćdziesiąt sześć 10000 dziesięć tysięcy 10001 dziesięć tysięcy jeden 10010 dziesięć tysięcy dziesięć 12345 dwanaście tysięcy trzysta czterdzieści pięć 100000 sto tysięcy 100001 sto tysięcy jeden 100011 sto tysięcy jedenaście 120000 sto dwadzieścia tysięcy 111111 sto jedenaście tysięcy sto jedenaście 7654321 siedem milionów sześćset pięćdziesiąt cztery tysiące trzysta dwadzieścia jeden 9876543 dziewięć milionów osiemset siedemdziesiąt sześć tysięcy pięćset czterdzieści trzy 9000001 dziewięć milionów jeden 9999999 dziewięć milionów dziewięćset dziewięćdziesiąt dziewięć tysięcy dziewięćset dziewięćdziesiąt dziewięć |
|
|
![]()
Post
#12
|
|
![]() Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
Witam, Bardzo ladny te classa num ale jak znalesc classa num_Core ? Bardzo prosze o pomoc. Pozdrawiam Klasa num_Core nie jest Ci potrzebna. Jest to klasa wbudowana we framework Kohana, a metoda num::say() nie korzysta z żadnej metody tej klasy. Możesz więc wywalić extends num_Core. |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 23.11.2010 Ostrzeżenie: (0%) ![]() ![]() |
Bardzo dziekuje za odpowiedzi!
|
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 1 Pomógł: 0 Dołączył: 16.09.2009 Ostrzeżenie: (0%) ![]() ![]() |
moje rozwiązanie
![]() aktualna wersja z bloga
a jak chcecie do faktur, to ma też pluralize, np.
Ten post edytował doggy1988 2.02.2012, 19:13:36 |
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 27.11.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witajcie.
echo Number2WordsPL::convert(520,50);[/php] daje wynik bez groszy. Ma ktoś pomysł, jak zrobić, żeby było z groszami Zrobiłem to w ten sposób, ale czy to jest ładne rozwiązanie
Ten post edytował iwi1 2.03.2012, 10:10:19 |
|
|
![]()
Post
#16
|
|
![]() Grupa: Moderatorzy Postów: 4 362 Pomógł: 714 Dołączył: 12.02.2009 Skąd: Jak się położę tak leżę :D ![]() |
Wszyscy kombinują z groszami jak koń pod górkę, a można przecież podzielić po przecinku string na 2 części, drugą część wziąć, przesunąć przecinek za 2 cyfrę, zaokrąglić i na obu użyć skryptu zamiany na liczby.
-------------------- Najpierw był manual... Jeśli tam nie zawarto słów mądrości to zapytaj wszechwiedzącego Google zadając mu własciwe pytania. A jeśli i on milczy to Twój problem nie istnieje :D
|
|
|
![]()
Post
#17
|
|
![]() Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 28.05.2025 - 05:07 |