![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 8 Pomógł: 0 Dołączył: 22.02.2010 Ostrzeżenie: (0%) ![]() ![]() |
Witam, wiem że temat był poruszany kilku krotnie, ale jakoś nie potrafię napisać dobrze działającej funkcji
![]() Na wejściu podaje ilość milisekund, a na wyjściu muszę uzyskać ile to minut : sekund : milisekund Przykład: Wprowadzamy: 84120 Otrzymujemy: 01:24:12 (1 *60 *1000) + (24*1000) +(12*10) = 84120 Dla ścisłości przypominam, że 1 ms = 0,001 s ![]() Wiem że sekundy na minuty przelicza się banalnie odpowiednim dzieleniem (%), ale tu mnie myli, że min i sek się liczy do 59, a milisekundy do 999. Dziękuje z góry za pomoc. |
|
|
![]()
Post
#2
|
|
![]() Grupa: Opiekunowie Postów: 3 855 Pomógł: 317 Dołączył: 4.01.2005 Skąd: że ![]() |
Spodziewasz się gotowca? Pokaż kod, to co masz.
-------------------- Jak poprawnie zadać pytanie | Jak poprawnie zatytułować wątek
Najczęstsze błędy | Błędy E_NOTICE | PHP FAQ | FAQ PHPedia | SQL-Injection | Logowanie i sesje | Hashowanie haseł | Server - od czego zacząć ? | Manual PHP Alternatywne Forum dla Ekspertów Nie pomagam na PW, nie mam GG |
|
|
![]()
Post
#3
|
|
![]() Grupa: Moderatorzy Postów: 4 362 Pomógł: 714 Dołączył: 12.02.2009 Skąd: Jak się położę tak leżę :D ![]() |
No przecież to normalne działanie. Tyle, że zamiast sekund masz milisekundy, a więc dzielisz przez inna wartość i modulo
![]() Masz więc w Twoim przykładzie: 84120 / 3600000 = 0 i 84120 % 3600000 = 84120 -> 0 godzin 84120 / 60000 = 1 i 84120 % 60000 = 24120 -> 1 minuta 24120 / 1000 = 24 i 24120 % 1000 = 120 -> 24 sekundy i 120 milisekund -------------------- 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
#4
|
|
Grupa: Zarejestrowani Postów: 8 Pomógł: 0 Dołączył: 22.02.2010 Ostrzeżenie: (0%) ![]() ![]() |
Dziękuję za wyjaśnienie.
Ja kombinowałem jeszcze z czymś takim że z liczby 84120 brałem 3 ostatnie znaki 120 i wiedziałem że są do milisekundy, później brałem resztę znaków czyli 84 i przeliczałem z sekund na minuty, ale po drodze musiałem gdzieś się pomylić, bo źle przeliczało Coś takiego skleciłem, ale chyba trochę na około:
Jak zmusić aby np 1 minuta była wyświetlana jako 01? Ten post edytował Treker 22.02.2010, 12:29:26 |
|
|
![]()
Post
#5
|
|
![]() Grupa: Opiekunowie Postów: 3 855 Pomógł: 317 Dołączył: 4.01.2005 Skąd: że ![]() |
Coś na podobę:
Funkcja formatująca sprintf() zapewnia umieszczenie wiodących zer dla liczb mniejszych niż 10. -------------------- Jak poprawnie zadać pytanie | Jak poprawnie zatytułować wątek
Najczęstsze błędy | Błędy E_NOTICE | PHP FAQ | FAQ PHPedia | SQL-Injection | Logowanie i sesje | Hashowanie haseł | Server - od czego zacząć ? | Manual PHP Alternatywne Forum dla Ekspertów Nie pomagam na PW, nie mam GG |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 183 Pomógł: 0 Dołączył: 18.05.2009 Ostrzeżenie: (0%) ![]() ![]() |
Zastanawia mnie jedno, jak sekundy przeliczyć na ms i wykonać coś z dokładnością do milisekundy
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 26.04.2025 - 01:42 |