02.02.2013, 00:15
|
|
Почётный гражданин KAZUS.RU
Регистрация: 29.12.2012
Адрес: Питер
Сообщений: 982
Сказал спасибо: 131
Сказали Спасибо 230 раз(а) в 157 сообщении(ях)
|
Re: Изучаем STM32 Cortex M3
tempora, не уловил разницы
|
|
|
|
02.02.2013, 00:33
|
|
Почётный гражданин KAZUS.RU
Регистрация: 10.01.2007
Сообщений: 3,412
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
|
Re: Изучаем STM32 Cortex M3
Boba_spb, Wiza_,
поясняю - ошибка именно в расстановке скобок. В данном конкретном случае вложенность вообще можно убрать (*), поскольку каждое из следующих условий даёт подмножесто чисел, удовлетворяющих предыдущему условию, ( Boba_spb - плюс, если он кратен 100, то кратен и 4 ), но это просто совпадение, в другом месте такая путаница с порядком вложения окажется источником ошибки.
(*):
Код:
|
bool IsLeapYear(int Year)
{
return(
( (Year%4) == 0) &&
( (Year%100) != 0) ||
( (Year % 400) == 0)
);
} |
____________________
UPD: И вообще, пользоваться Википедией для таких случаев - опасная привычка.
__________________
There's always more than one way to skin a cat.
Последний раз редактировалось tempora; 02.02.2013 в 00:45.
|
|
|
|
02.02.2013, 00:57
|
|
Почётный гражданин KAZUS.RU
Регистрация: 29.12.2012
Адрес: Питер
Сообщений: 982
Сказал спасибо: 131
Сказали Спасибо 230 раз(а) в 157 сообщении(ях)
|
Re: Изучаем STM32 Cortex M3
tempora, если вы хотели нас запутать, то - у вас получилось.
Чего вы хотите сказать-то ? Все приведённые примеры - эквивалентны.
Вы бы хоть пример даты привели чтобы доказать нам разность этих условий
P.S. Лично для меня - первый пример читабельнее
|
|
|
|
02.02.2013, 01:08
|
|
Почётный гражданин KAZUS.RU
Регистрация: 10.01.2007
Сообщений: 3,412
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
|
Re: Изучаем STM32 Cortex M3
Сообщение от Wiza_
|
Чего вы хотите сказать-то ?
|
ОК, сокращу до минимума.
1. Переводя словесные формулировки в программный код, следите за правильной расстановкой скобок.
2. В поисках определений и формул, не пользуйтесь сомнительными источниками.
__________________
There's always more than one way to skin a cat.
|
|
|
|
02.02.2013, 01:21
|
|
Почётный гражданин KAZUS.RU
Регистрация: 29.12.2012
Адрес: Питер
Сообщений: 982
Сказал спасибо: 131
Сказали Спасибо 230 раз(а) в 157 сообщении(ях)
|
Re: Изучаем STM32 Cortex M3
1. Устественно. Но в данном конкретном случае группировка условий влият только на читаемость кода.
2. Сошлите меня на официальное описание стандарта.
|
|
|
|
02.02.2013, 02:46
|
|
Почётный гражданин KAZUS.RU
Регистрация: 10.01.2007
Сообщений: 3,412
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
|
Re: Изучаем STM32 Cortex M3
1. Чтобы несоблюдение вложенности не порождало ошибок, нужно всякий раз проверять - является ли " данный конкретный случай" устойчивым к таким ошибкам; плюс, сама такая проверка тоже может содержать ошибки. Не проще ли соблюдать вложенность, вместо таких сизифовых проверок и риска иметь ошибку в коде?
2. Источников много - проверенные библиотеки, в которых эта функция уже реализована (если платформа или язык не позволяют вызвать саму б.функцию), проверенные справочные системы, разные knoledge-bases, энциклопедии - например, МСДН, БСЭ; неужто сами не знаете?
_________________________
Upd:
Сообщение от Wiza_
|
в данном конкретном случае группировка условий влият только на читаемость кода.
|
Сообщение от Wiza_
|
P.S. Лично для меня - первый пример читабельнее
|
Вот, никак не пойму - чем запись ( (A AND B) OR C ) читабельнее записи ( A AND (B OR C) ) ???
__________________
There's always more than one way to skin a cat.
Последний раз редактировалось tempora; 02.02.2013 в 03:27.
|
|
|
|
02.02.2013, 10:59
|
|
Почётный гражданин KAZUS.RU
Регистрация: 08.06.2008
Сообщений: 1,394
Сказал спасибо: 4
Сказали Спасибо 183 раз(а) в 167 сообщении(ях)
|
Re: Изучаем STM32 Cortex M3
Ну с високосным годом вроде уяснили.
Давайте теперь пообсуждаем алгоритм определение дня недели.
Затем поговорим об алгоритме представления текущего времени в формате
типа OADate ( он в автоматизации применяется широко ).
|
|
|
|
02.02.2013, 11:22
|
|
Почётный гражданин KAZUS.RU
Регистрация: 29.12.2012
Адрес: Питер
Сообщений: 982
Сказал спасибо: 131
Сказали Спасибо 230 раз(а) в 157 сообщении(ях)
|
Re: Изучаем STM32 Cortex M3
1. Сорри, но тут мне сказать нечего ибо я не понимаю логики в абстракциях. Сказано много, но о чём - непонятно. (забейте, - я такой. у меня мозг почему-то принципиально отказывается анализировать то, что ему не нужно).
2. Я не использую чужие библиотеки когда пишу под мк, windows(включая api) или linux пока их досконально не проверю самостоятельно и не разберусь в принцыпе их работы. Мне приходится писать под разные языки - так что, чтобы не анализировать кучу чужого кода реализации одной и той же функции на разных языках - мне проще знать алгоритм. Как показывает практика - wiki достаточно чтобы ответить на подавляющее число вопросов. Если не хватает, то обязательно найдётся стандарт. MSDN... Ну в принцыпе иногда помогает, но структуры глубокого си типа "поинтер на поинтер, который указывает на поинтер" я анализировать сам берусь крайне редко. Мне, опять же, проще поискать чужую реализацию. БСЭ в глаза уже давно не видел. Ну остальное - понятно: находится поиском по инету.
Цитата:
|
Вот, никак не пойму - чем запись ( (A AND B) OR C ) читабельнее записи ( A AND (B OR C) ) ???
|
Конкретно тут - ничем. Но наш пример имеет перевод.
"Каждый четвёртый, но не сотый или каждый четырёхсотый"
"Каждый четвёртый, но при условии что он не сотый или каждый четырёхсотый"
Он трактуется двояко в обоих случаях. Но первый - короче
|
|
|
|
02.02.2013, 11:26
|
|
Почётный гражданин KAZUS.RU
Регистрация: 10.01.2007
Сообщений: 3,412
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
|
Re: Изучаем STM32 Cortex M3
Сообщение от Boba_spb
|
Ну, ... вроде уяснили. Давайте теперь ...
|
Напрасно смеётесь - мелкософт, например, "в молодости" подошел к этому вопросу легкомысленно ( видать, таблично "считали") и до сих пор эту ошибку в екселе исправить не может.
____________________________
Upd. Наглядное пособие:
__________________
There's always more than one way to skin a cat.
Последний раз редактировалось tempora; 02.02.2013 в 11:44.
|
|
|
|
02.02.2013, 13:04
|
|
Почётный гражданин KAZUS.RU
Регистрация: 08.06.2008
Сообщений: 1,394
Сказал спасибо: 4
Сказали Спасибо 183 раз(а) в 167 сообщении(ях)
|
Re: Изучаем STM32 Cortex M3
Сообщение от Wiza_
|
1.
Конкретно тут - ничем. Но наш пример имеет перевод.
"Каждый четвёртый, но не сотый или каждый четырёхсотый"
"Каждый четвёртый, но при условии что он не сотый или каждый четырёхсотый"
Он трактуется двояко в обоих случаях. Но первый - короче
|
Короче:
"Каждый четырёхсотый или не сотый четвертый"
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 01:49.
|
|