Другие языки программирования и технологии
Люди блин...почему в программах я практически никогда не вижу and, not, or
Вот например код проверки в программе if (X < 10) then begin if (X > 0) then begin write('Число больше нуля, и меньше 10') else write('Число больше десяти'); else('Число меньше нуля'); end; end; Сорри код составил примерно, почему не написать if((X <= 10) and (X > 0)) then write('Число меньше 10, или равно ему') else write('Число больше 10, или меньше 0'); end. И почему не так пишут, ведь код читать легче
потому что они при написании не используються
хД
хД
наверно потому что серьёзные системы программ писать не доводилось) )
"if((X <= 10) and (X > 0)) then " мысль в правильную сторону - часто надо в один if запихать 10 условий чтоб на пару страниц не писать. Там как раз
if(!strcmp(..) && (a< b) || .. ну и т. д.
а
if( ! ukazatel_Nuzhnogo ) - вообще стандарная проверка распределения памяти или существования объекта
для обучения логике новичкам обычно дают каскады поштучных if`ов. а как чуть глубже переходят к "100 операторов в одной строке"
"if((X <= 10) and (X > 0)) then " мысль в правильную сторону - часто надо в один if запихать 10 условий чтоб на пару страниц не писать. Там как раз
if(!strcmp(..) && (a< b) || .. ну и т. д.
а
if( ! ukazatel_Nuzhnogo ) - вообще стандарная проверка распределения памяти или существования объекта
для обучения логике новичкам обычно дают каскады поштучных if`ов. а как чуть глубже переходят к "100 операторов в одной строке"
Первый пример более шире. Возможности обработки тела операции больше - если разбить по шагам можно более детально обрабатывать ошибки. Или результат конкретно- меньше нуля, больше нуля меньше 10, больше 10. В основном данный код идет при проектировании, типа бета версия. Потом из за отсутствия ошибок код оптимизируется-как во втором примере.
Чтобы проверить каждое условие в отдельности. Вложенность используется для снижения мощности множества проверяемых условий.
>>наверно потому что серьёзные системы программ писать не доводилось) )
>>часто надо в один "иф" запихать 10 условий чтоб на пару страниц не писать.
Это, наверное потому, что серьёзные системы, написанные "программистами" которые любят сокращать Вам поддерживать не доводилось.
Если под "серьёзной системой" понимается драйвер, или еще какая "узко заточенная" или ориентированная на АКАП-исполнение программа, то спору нет, нужно оптимизировать как только можно, иначе - это бред.
Лично я бы отбил руки за написание "сокращенного" кода:
- реально толку от такой "оптимизации" - ноль (компиляторы и прочего рода препроцессоры уже давно намного умнее программистов в плане оптимизации и перевода в байт/машинный коды)
- программисту, поддерживающему большую систему намного проще разобраться в хорошо структурированных блоках условий (а, поскольку, логическое ветвление один из самых частых и трудноотлавливаемых багов - желательно еще и комментировать или писать то-же условие на метаязыке, чтобы читалось легче) чем в однострочной абракадабре (современные ИДЕ позволяют "сворачивать" код поблочно и выборочно, или вы пользуетесь "блокнотом" для написания "серьёзных систем"? о. О)
Теперь по сути вопроса: видимо автор - учитель информатики в школе или ее ученик? Просто мне трудно представить, что где-то еще можно увидеть программы, не содержащие условных конструкций "НЕ", "И", "ИЛИ", "ЛИБО" и написанные в таком стиле.
Где вы нашли тех людей, которые пишут так программы, как Вы продемонстрировали? Это же стиль написания пятого класса!.. .
Хотя, если мне не изменяет память, то в чистом паскале нет операторов типа "елсеИф", так что, видимо, выкручиваются, как умеют :)
>>часто надо в один "иф" запихать 10 условий чтоб на пару страниц не писать.
Это, наверное потому, что серьёзные системы, написанные "программистами" которые любят сокращать Вам поддерживать не доводилось.
Если под "серьёзной системой" понимается драйвер, или еще какая "узко заточенная" или ориентированная на АКАП-исполнение программа, то спору нет, нужно оптимизировать как только можно, иначе - это бред.
Лично я бы отбил руки за написание "сокращенного" кода:
- реально толку от такой "оптимизации" - ноль (компиляторы и прочего рода препроцессоры уже давно намного умнее программистов в плане оптимизации и перевода в байт/машинный коды)
- программисту, поддерживающему большую систему намного проще разобраться в хорошо структурированных блоках условий (а, поскольку, логическое ветвление один из самых частых и трудноотлавливаемых багов - желательно еще и комментировать или писать то-же условие на метаязыке, чтобы читалось легче) чем в однострочной абракадабре (современные ИДЕ позволяют "сворачивать" код поблочно и выборочно, или вы пользуетесь "блокнотом" для написания "серьёзных систем"? о. О)
Теперь по сути вопроса: видимо автор - учитель информатики в школе или ее ученик? Просто мне трудно представить, что где-то еще можно увидеть программы, не содержащие условных конструкций "НЕ", "И", "ИЛИ", "ЛИБО" и написанные в таком стиле.
Где вы нашли тех людей, которые пишут так программы, как Вы продемонстрировали? Это же стиль написания пятого класса!.. .
Хотя, если мне не изменяет память, то в чистом паскале нет операторов типа "елсеИф", так что, видимо, выкручиваются, как умеют :)
Потому что это школьная хрень, а не полноценная программа.
Школьные программы редко можно назвать программами. Ибо они настолько крупны/криворуки.
Все и пишут, используя and, or. А вот без not можно обойтись.
Вообще удобнее Си, ежели паскаль. ;)
if ((x<=10)||(X>0)) {
Тело
}
Школьные программы редко можно назвать программами. Ибо они настолько крупны/криворуки.
Все и пишут, используя and, or. А вот без not можно обойтись.
Вообще удобнее Си, ежели паскаль. ;)
if ((x<=10)||(X>0)) {
Тело
}
Похожие вопросы
- Почему такие программы как Photoshop не желательно устанавливать в системный раздел?
- Почему эта программа Си выдает не такой результат?
- А почему троянскую программу назвали именно так
- (C++) Нужна помощь в написании 4-х программ. максимально простые, уровень с++ нулевой практически.
- video card or driver doesnt support vertex shaber 3.0 or better-что это значит?
- Трабл с Фотошопом : "Could not load default swatches becuase the file could not be found."
- Почему программа Php Devel Studio,содержит вирус?
- Почему вид файла в программе dreamweaver и в браузере отличается???
- Почему программа работает некорректно при вводе цифры "0"?
- Подловил прогу с блокировкой многих сайтов, вылечил ComboFix, почему каспер и др. антивиры не видели вредную программу?
))
А без него системы поддерживающие десятки объектов раскиданные на тысячи километров сложновато писать))
удобнее видеть в экране логический кусок, а не 20 строк скобок - в учебниках круто всё вынесенными скобкими обозначено, а это только в простейших формочках удобно))
Неа не блокнотом.
UltraEdit - он много удобнее (компилю естественно из командной строки)