![]() |
|
Модераторы: korob2001, ginnie |
![]()
|
|
| Agares |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 376 Регистрация: 20.5.2007 Где: Минск Репутация: нет Всего: нет |
Использую так:
выдает не правильную дату (310008, хотя должна выдавать 300908) где моя ошибка? Это сообщение отредактировал(а) Agares - 30.9.2008, 14:29 |
|||
|
||||
| ginnie |
|
||||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1287 Регистрация: 6.1.2008 Где: Москва Репутация: 38 Всего: 49 |
Уважаемый Agares, использую так
Выдает
Где моя ошибка? P.S.
выдает 2130, т.к. у операторов + и . одинаковый приоритет и они выполняются последовательно слева направо. Это сообщение отредактировал(а) ginnie - 30.9.2008, 14:38 -------------------- Написать код, понятный компьютеру, может каждый, но только хорошие программисты пишут код, понятный людям. (Мартин Фаулер. Рефакторинг) |
||||||
|
|||||||
| amg |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1145 Регистрация: 3.8.2006 Где: Новосибирск Репутация: 38 Всего: 50 |
||||
|
||||
| ginnie |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1287 Регистрация: 6.1.2008 Где: Москва Репутация: 38 Всего: 49 |
amg, это кто такое ($year+1900)%100 в документации предлагает?
Это сообщение отредактировал(а) ginnie - 30.9.2008, 14:55 -------------------- Написать код, понятный компьютеру, может каждый, но только хорошие программисты пишут код, понятный людям. (Мартин Фаулер. Рефакторинг) |
|||
|
||||
| amg |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1145 Регистрация: 3.8.2006 Где: Новосибирск Репутация: 38 Всего: 50 |
||||
|
||||
| KSURi |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 887 Регистрация: 8.6.2006 Где: Russia Репутация: 20 Всего: 27 |
UPD:
сори, не так понял вопрос Это сообщение отредактировал(а) KSURi - 30.9.2008, 15:06 -------------------- Died at Life.pl line 21 |
|||
|
||||
| ginnie |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1287 Регистрация: 6.1.2008 Где: Москва Репутация: 38 Всего: 49 |
amg, в документации это написано последовательно (по тексту), но не означает, что так и надо писать (все вместе)
($year+1900)%100 от $year % 100 отличается только лишним сложением, электроэнергию надо экономить -------------------- Написать код, понятный компьютеру, может каждый, но только хорошие программисты пишут код, понятный людям. (Мартин Фаулер. Рефакторинг) |
|||
|
||||
| amg |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1145 Регистрация: 3.8.2006 Где: Новосибирск Репутация: 38 Всего: 50 |
||||
|
||||
| ginnie |
|
||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1287 Регистрация: 6.1.2008 Где: Москва Репутация: 38 Всего: 49 |
Кстати, по поводу основного вопроса, рекомендовал другим модуль B::Deparse, а сам не пользуюсь
дает
Это сообщение отредактировал(а) ginnie - 30.9.2008, 16:58 -------------------- Написать код, понятный компьютеру, может каждый, но только хорошие программисты пишут код, понятный людям. (Мартин Фаулер. Рефакторинг) |
||||
|
|||||
| KSURi |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 887 Регистрация: 8.6.2006 Где: Russia Репутация: 20 Всего: 27 |
ginnie, так ведь выше сами написали, что у . и + одинаковый приоритет.
-------------------- Died at Life.pl line 21 |
|||
|
||||
| ramus |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 53 Регистрация: 21.2.2008 Репутация: 1 Всего: 1 |
Кстати, насчет электричества
пользуюсь гдето подсмотренным вариантом, использующим только один системный вызов функции localtime почему то мне кажется что так нагрузка на сервер будет меньше $s = sprintf "%4d/%02d/%02d %02d:%02d:%02d: prg_name(perl): Begin work\n", sub{($_[5]+1900, $_[4]+1, $_[3], $_[2], $_[1], $_[0])}->(localtime); это как рабочий пример, естественно без sprintf электроэнергии еще меньше тратится правда она тогда в тепло выделяется :( еще примеры (зато работают
Это сообщение отредактировал(а) ramus - 30.9.2008, 22:16 |
|||
|
||||
| ginnie |
|
||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1287 Регистрация: 6.1.2008 Где: Москва Репутация: 38 Всего: 49 |
ramus, за такое
надо на кол и премию вручать, посмертно Как только не изголяются программисты, чтобы написать все в одну строку! Завтра сравним по производительности с моим любимым вариантом
Что-то мне подсказывает, что мой вариант... Это сообщение отредактировал(а) ginnie - 1.10.2008, 11:34 -------------------- Написать код, понятный компьютеру, может каждый, но только хорошие программисты пишут код, понятный людям. (Мартин Фаулер. Рефакторинг) |
||||
|
|||||
| rcdimon |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 766 Регистрация: 12.7.2004 Где: Москва Репутация: 1 Всего: 2 |
Я ваще вот так деаю всегда
|
|||
|
||||
| ginnie |
|
||||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1287 Регистрация: 6.1.2008 Где: Москва Репутация: 38 Всего: 49 |
Провел тестирование двух вариантов, разница в производительности практически отсутствует.
результаты такие:
-------------------- Написать код, понятный компьютеру, может каждый, но только хорошие программисты пишут код, понятный людям. (Мартин Фаулер. Рефакторинг) |
||||||
|
|||||||
| arto |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1495 Регистрация: 31.10.2004 Репутация: 38 Всего: 40 |
# perl -MBenchmark -e 'sub A () { my @a = localtime; return ( @a[0..3],$a[4]+1,$a[5]+1900
} sub B () { return sub { @_[0..3],$_[4]+1,$_[5]+1900 }->(localtime) } timethese ($ARGV[0],{ A => \&A,B => \&B )' 10000000 Benchmark: timing 10000000 iterations of A, B... A: 143 wallclock secs (75.38 usr + 58.65 sys = 134.03 CPU) @ 74610.16/s (n=10000000) B: 125 wallclock secs (63.99 usr + 58.12 sys = 122.11 CPU) @ 81893.37/s (n=10000000) # print -f "%.2f%%\\n" $[(81893.37-74610.16)/74610.16*100] 9.76% # |
|||
|
||||
![]()
|
| Правила форума "Perl" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Perl: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |