Модераторы: LSD

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Красота кода 
:(
    Опции темы
Baa
Дата 15.5.2004, 14:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 2639
Регистрация: 12.4.2002
Где: Москва




У кого есть чувство красоты кода? Как вы думаете, оно приходит с опытом, али от человека зависит? Замечал, что многие программисты пишут программы абы как. Я сейчас говорю не только про форматирование. Не каждый человек может восхищаться красотой кода другого человека. А некоторые в нем вообще никакой красоты не видят. Есть ли чувство красоты у вас? Может какие случае были?
Я видел как красивый, так и бездарный (на мой взгляд) код. Генеальные реализации тех или иных моментов. А можете ли вы восхищаться чужим кодом?


--------------------
"Duty is everything; the greatest of joys, the deepest of sorrows" Aribeth de Tylmarande
PM ICQ   Вверх
Гость_maris
Дата 15.5.2004, 14:46 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Я это называю "изящество". Ну что-то вроде старого анекдота, где даны числа от 1 до 10 и требуется напечатать 0, если число чентое, и 1 в противном случае. И четыре варианта решения задачи:

1.
Код
if x=2 or x=4 or x=6 or x=8 or x=10
then write(0)
else write(1)


2.
Код
if not odd(x)
then write(0)
else write(1)


3.
Код
write(x mod 2)


4.
Код
a : array[1..10]:=(1,0,1,0,1,0,1,0,1,0);
write(a[x])


Какой вариант ты бы назвал красивым?

  Вверх
LSD
Дата 15.5.2004, 16:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15719
Регистрация: 24.3.2004
Где: Dublin




Ну чуство красоты у всех разное, хотя некоторые моменты вызывают у меня зависть, настолько все хорошо реализованно (правда случается это не часто).
А по поводу задачки, я как математик выбрал бы 3 вариант, а как программиста меня не устраивает ни один, но ближе всего первый.


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
chipset
Дата 15.5.2004, 16:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4071
Регистрация: 11.1.2003
Где: Seattle, US




я например после года изучения Си, восхищался кодом Страуструпа
Код

for(int i=0;i<N;i++) {
...
}

wow.gif smile.gif rolleyes.gif


--------------------
Цитата(Jimi Hendrix)
Well, I stand up next to a mountain
And I chop it down with the edge of my hand
PM MAIL WWW   Вверх
Дрон
Дата 15.5.2004, 17:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Java-ненавистник :)
****


Профиль
Группа: Участник Клуба
Сообщений: 3179
Регистрация: 29.12.2002
Где: Санкт-Петербург




Мне на полном серьёзе один товарищ заявил, что я красиво форматирую тексты программ smile.gif
В примере выше только 2 и 3 ещё на что-то похожи (хотя самый быстрый наверно №4), а вообще уменее найти "изящное" решение для сложных ситуаций мне в людях нравится. К сожалению редко встречаю.
Почитываю я тут иногда исходники QuakeII -- интересно написаны, поучительно. Видно, что ребята заботились не о красоте кода, а о быстродействии. Эстетического удовольствия особо не вызывает, но вызывает уважение. Кстати написано оно всё на простом Си (без плюсов).

Это сообщение отредактировал(а) Дрон - 15.5.2004, 17:09


--------------------
Да. Именно так.
PM   Вверх
chipset
Дата 15.5.2004, 17:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4071
Регистрация: 11.1.2003
Где: Seattle, US




мне С++ больше нравится, ещё мне нравится архитектура COM...


--------------------
Цитата(Jimi Hendrix)
Well, I stand up next to a mountain
And I chop it down with the edge of my hand
PM MAIL WWW   Вверх
Дрон
Дата 15.5.2004, 18:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Java-ненавистник :)
****


Профиль
Группа: Участник Клуба
Сообщений: 3179
Регистрация: 29.12.2002
Где: Санкт-Петербург




Цитата
мне С++ больше нравится

Больше, чем что? Чем простой Си?
Не стоит их сравнивать. Это разные по своему назначению языки.



--------------------
Да. Именно так.
PM   Вверх
setq
Дата 15.5.2004, 18:47 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











есть люди которые в жизни не могут обойтись без порядка, ну например не работается им когда в раковине грязная посуда. вроде лежит она себе там никого не трогает, есть не просит, а всё дело принципа.

не всем это нужно. уверен - некоторым красиво писать противопоказано. (это не я, я вылизываю код как псих) от чего это зависит? пойди узнай.

мне ближе 3-й и 4-й вариант
  Вверх
nevermind
Дата 15.5.2004, 18:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 91
Регистрация: 15.5.2004




Мне кажется что вариант 2 наиболее правильный, т.к. между 1 и 10 могут быть еще дробные числа, и в третьем варинате mod не сработает. А 1 вариант мне кажется вообще не элегантным. Но как сказать, это мое субьектиное мнение smile.gif
PM   Вверх
LSD
Дата 15.5.2004, 19:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15719
Регистрация: 24.3.2004
Где: Dublin




Цитата
Почитываю я тут иногда исходники QuakeII -- интересно написаны, поучительно. Видно, что ребята заботились не о красоте кода, а о быстродействии. Эстетического удовольствия особо не вызывает, но вызывает уважение.

Это смотря что писать: одно дело если это игра, ну упала и упала сохраняться будут чаще, а если это сервак то пусть он работает по медленнее чуток но чтобы мог год без перезагрузки.


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
chipset
Дата 15.5.2004, 19:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4071
Регистрация: 11.1.2003
Где: Seattle, US




мне больше всего вариант 4 понравился... smile.gif


--------------------
Цитата(Jimi Hendrix)
Well, I stand up next to a mountain
And I chop it down with the edge of my hand
PM MAIL WWW   Вверх
<Spawn>
Дата 15.5.2004, 20:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Око кары:)
****


Профиль
Группа: Экс. модератор
Сообщений: 2776
Регистрация: 29.1.2003
Где: Екатеринбург




nevermind Кто тебе сказал, что не сработает? 3 - ий самый "ровный" вариант. Меньше кода, ни каких условий, не занимается память лишними значениями(типа 4-го варианта) все предельно просто и главное понятно! Я за 3-ий smile.gif


--------------------
"Для некоторых людей программирование является такой же внутренней потребностью, подобно тому, как коровы дают молоко, или писатели стремятся писать" - Николай Безруков.
PM MAIL ICQ   Вверх
chipset
Дата 15.5.2004, 20:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4071
Регистрация: 11.1.2003
Где: Seattle, US




Ну давайте что ли опрос сделаем... biggrin.gif


--------------------
Цитата(Jimi Hendrix)
Well, I stand up next to a mountain
And I chop it down with the edge of my hand
PM MAIL WWW   Вверх
Chingachguk
Дата 15.5.2004, 21:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1232
Регистрация: 25.3.2002
Где: Москва




Мне больше нравится 3-ий, но я бы сделал лучше:

Цитата

write(x and 1)




--------------------
I don't like the drugs (but the drugs like me). M.Manson.
PM MAIL ICQ   Вверх
Она
Дата 15.5.2004, 22:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 399
Регистрация: 23.4.2004
Где: Москва




Цитата
Какой вариант ты бы назвал красивым?

Ответ не мой, мужнин, но когда я его услышала, я оценила силу его мысли biggrin.gif biggrin.gif biggrin.gif biggrin.gif
Не один код (из приведенных) не является красивым, т.к. минимальные требования к "красивости (субъективному" что б поставленная задача была решена, а ни в одном из случаев этого не видно smile.gif Где цикл спрашивается? biggrin.gif biggrin.gif biggrin.gif biggrin.gif biggrin.gif
Добавлено @ 22:07
ну вот еще один (правда работающий) вариант smile.gif
var
i:integer;
begin
for i:=1 to 10 do
if (i and 1)=1 then Memo1.Lines.Add('0')
else Memo1.Lines.Add('1')
end;



--------------------
С уважением. Мария.
PM MAIL   Вверх
Она
Дата 15.5.2004, 22:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 399
Регистрация: 23.4.2004
Где: Москва




А вот таперь о красоте. Считаю, что программистам, в плане зрителей (как художникам) не повезло. Так, что не получится из программистов Ван Гогов (хоть все поотрезайте). Очень мало людей занимаются программированием, еще меньшее количество способно ОЦЕНИТЬ код другого человека. Да и вкусы у всех разные, но как мне кажется, главная красота кода, в его философии...понятности и т.д. Т.е. она зависит от очень многих факторов, может человек придумать офигенное решение, но реализует его криво, и "красота" его от этого пострадает... Это я Вам тут как художник говорю, как человек, способный понять муки творчества программистов....


--------------------
С уважением. Мария.
PM MAIL   Вверх
Lonley
Дата 16.5.2004, 02:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 597
Регистрация: 7.10.2003
Где: северные ворота М урманск




в квартире полный бардак, а в программе я немогу пройти мимо если нет положенного
отступа smile.gif прямо руки чешуться поставить его smile.gif
----------------------------
коментарии обязательно
Код

{*******************************************
 *                                                                                  *
 *                                                                                  *
 *******************************************}

типа вот таких smile.gif

Это сообщение отредактировал(а) Lonley - 16.5.2004, 02:26


--------------------
Земную жизнь пройдя до половины,
Я очутился в сумрачном лесу,
Утратив правый путь во тьме долины.
Каков он был, о, как произнесу,
Тот дикий лес, дремучий и грозящий,
PM MAIL ICQ   Вверх
maxim1000
Дата 16.5.2004, 02:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 3334
Регистрация: 11.1.2003
Где: Киев




Мне кажется, стоит разделить понятие "красота кода" и "красота решения задачи"
К красоте кода в моем понимании относится все, что связанно с форматированием, именами переменных и функций, выделению кусков кода в отдельные функции и пр.
А вот к красоте решения задачи (опять же в моем понимании) относится то, что здесь обсуждается
Я, кстати, за 3-й вариант: не могу придумать нормального ллкритерия, по которому он был бы хуже какого-то другого
Цитата
write(x and 1)

думаю, хорошие компиляторы переделают это в "mod 2"
Цитата
хотя самый быстрый наверно №4

не-е, лишнее обращение к памяти по сравнению с 3-м, а в остальном все так же, плюс необходимость заполнения массива перед работой
Цитата
есть люди которые в жизни не могут обойтись без порядка, ну например не работается им когда в раковине грязная посуда. вроде лежит она себе там никого не трогает, есть не просит, а всё дело принципа.

интересно, что на моем рабочем месте жуткий беспорядок (как я написал в теме про рассеяность), а вот в программах я фанатично все упорядочиваю
Даже в программах на ассемблере использую имена переменных и ссылок иногда больше десятка символов, отступы в соответствии с блоками кода
(я даже в институтских конспектах вместо абзацев использовал отступы, как в программах: в них можно семантики больше вложить)
Цитата
Очень мало людей занимаются программированием, еще меньшее количество способно ОЦЕНИТЬ код другого человека

вот и приходится сидеть и восхищаться совим кодом biggrin.gif
Добавлено @ 02:32
Цитата
в квартире полный бардак, а в программе я немогу пройти мимо если нет положенного
отступа  прямо руки чешуться поставить его

о, вот у меня и соратник появился, а то на работе все смеются (точнее сначала смеялись, потом привыкли), когда я начинаю устанавливать отступы
---
кстати, ошибочка маленькая:
Цитата
Цитата
write(x and 1)

думаю, хорошие компиляторы переделают это в "mod 2"

имелось в виду, конечно, наоборот...


--------------------
qqq
PM WWW   Вверх
chipset
Дата 16.5.2004, 02:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4071
Регистрация: 11.1.2003
Где: Seattle, US




Lonley
Респект adv/65.gif


--------------------
Цитата(Jimi Hendrix)
Well, I stand up next to a mountain
And I chop it down with the edge of my hand
PM MAIL WWW   Вверх
Baa
Дата 16.5.2004, 11:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 2639
Регистрация: 12.4.2002
Где: Москва




Мне ближе всего третий вариант. Да, кстати, кто-то там говорил про дробные числа? Дробные числа свойствами четности не обладают ;) Потому мы имеем дело только с целыми числами.
з.ы. самый красивый код:
Код
xor ax, ax
;)



--------------------
"Duty is everything; the greatest of joys, the deepest of sorrows" Aribeth de Tylmarande
PM ICQ   Вверх
Дрон
Дата 16.5.2004, 12:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Java-ненавистник :)
****


Профиль
Группа: Участник Клуба
Сообщений: 3179
Регистрация: 29.12.2002
Где: Санкт-Петербург




Baa
Код
xor ax, ax

Да... С тех пор как впервые это увидел всегда только так и пишу smile.gif


--------------------
Да. Именно так.
PM   Вверх
maxim1000
Дата 16.5.2004, 15:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 3334
Регистрация: 11.1.2003
Где: Киев




Цитата
напечатать 0, если число чентое, и 1 в противном случае

Цитата
Дробные числа свойствами четности не обладают

не сказано вывести 1 для нечетных чисел, которые должны быть для этого целыми
если 0.5 нельзя назвать четным, поэтому это - как раз тот самы "противный случай" smile.gif
Цитата
xor ax, ax

к сожалению не помню Intel'овского ассемблера (возможно ли там "mov ax,0"),
но мне этот код красивым не кажется. По мне так код должен быть понятным, и не просто понятным, а таким, чтобы тратилось минимум времени на пониманием хотя бы отдельных строк.
Когда я смотрю на эту строку, вижу прежде всего логическую операцию и начинаю размышлять, где это у меня в чисто вычислительном алгоритме оказались логические операции...
Кстати, последнее время наблюдается перенос С-ишного синтаксиса в ассемблеры, вот это мне нравится...


--------------------
qqq
PM WWW   Вверх
Дрон
Дата 16.5.2004, 16:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Java-ненавистник :)
****


Профиль
Группа: Участник Клуба
Сообщений: 3179
Регистрация: 29.12.2002
Где: Санкт-Петербург




Можно писать и mov ax,0, но xor ax,ax выполняется быстрее. Хотя ты наверно прав, что сторонний человек догадается не сразу hehe.gif

А насчёт переноса синтаксиса языков высокого уровня в асм, то в этом есть и минусы.
Чел привыкший думать на языке Си не сразу увидит большую гибкость асма и следовательно эффективность кода будет ниже.




--------------------
Да. Именно так.
PM   Вверх
Chingachguk
Дата 16.5.2004, 17:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1232
Регистрация: 25.3.2002
Где: Москва




Цитата


Цитата 
xor ax, ax

к сожалению не помню Intel'овского ассемблера (возможно ли там "mov ax,0"),
но мне этот код красивым не кажется. По мне так код должен быть понятным, и не просто понятным, а таким, чтобы тратилось минимум времени на пониманием хотя бы отдельных строк.
Когда я смотрю на эту строку, вижу прежде всего логическую операцию и начинаю размышлять, где это у меня в чисто вычислительном алгоритме оказались логические операции...


Ну не скажи... Возьмем реализацию следующей задачи: если i равно 1, то i сделать равным 2 - иначе сделать его равным 1. Может встретится в двухкнопочном окне в обработчике нажатий клавиш, где i - номер кнопки (1,2).

Можно сделать так:

Цитата

if i=1 then i=2 else i:=1; // if (i==1) i=2 else i=1;


но можно и так:

Цитата

i:=i xor 3; // i^=3;




--------------------
I don't like the drugs (but the drugs like me). M.Manson.
PM MAIL ICQ   Вверх
LSD
Дата 16.5.2004, 17:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15719
Регистрация: 24.3.2004
Где: Dublin




А как насчет "надежности" кода, код должен проверять входные данные на корректность если они поступили из ненадежного источника, а поскольку мы не знаем источник данных, надо считать его ненадежным, значит надо проверить как минимум на диапазон входных значений или даже на целочисленность, если данные поступают в формате допускающем дробные значения.


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
chipset
Дата 16.5.2004, 17:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4071
Регистрация: 11.1.2003
Где: Seattle, US




И ещe исключение генерить;)


--------------------
Цитата(Jimi Hendrix)
Well, I stand up next to a mountain
And I chop it down with the edge of my hand
PM MAIL WWW   Вверх
LSD
Дата 16.5.2004, 17:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15719
Регистрация: 24.3.2004
Где: Dublin




Цитата(chipset @ 16.5.2004, 17:36)
И ещe исключение генерить;)

По обстоятельствам, если это автономная процедура и язык поддерживает исключения то генерить.


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
dm9
Дата 16.5.2004, 23:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Дмитрий Копытин
****


Профиль
Группа: Vingrad developer
Сообщений: 3876
Регистрация: 22.7.2002
Где: Москва




Baa, а меня ещё больше порадовало решение задачи "поменять местами два числа, не используя 3-ю переменную".

xor ax, bx
xor bx, ax
xor ax, bx

smile.gif

А вот насчёт красоты кода - не могу читать код, пока по-своему не отформатирую. Красота определяется привычкой.

А вот изящно решённая задача - это да! Порадовать может. Как вышеупомянутая, например. Или вот это решение, например smile.gif
http://forum.vingrad.ru/index.php?showtopi...t=0&#entry91663
PM MAIL ICQ   Вверх
Дрон
Дата 16.5.2004, 23:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Java-ненавистник :)
****


Профиль
Группа: Участник Клуба
Сообщений: 3179
Регистрация: 29.12.2002
Где: Санкт-Петербург




Цитата
Baa, а меня ещё больше порадовало решение задачи "поменять местами два числа, не используя 3-ю переменную

Ну уж если использовать асм, то там есть xchg smile.gif smile.gif
А можно ещё так:
a = a + b
b = a - b
a = a - b


А что вы скажете про разницу между:
for (i=0;i<n;i++) и for(i=n-1;i>=0;i--)
Какой цикл по вашему лучше, если n - переменная и порядок обхода не важен?



--------------------
Да. Именно так.
PM   Вверх
Coocky
Дата 16.5.2004, 23:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


GUI гуру
****


Профиль
Группа: Участник Клуба
Сообщений: 2879
Регистрация: 16.2.2004
Где: Украина. Запорожь е




Вообще гениальный код приходит как гениальная мысль.Нелзя(НЕ ВЕРЮ!!!) все время писать гениально!!!Просто иногда пробивает...
Я помню как давно написал сортировку методом пузырька одним циклом.Препод в шоке был biggrin.gif biggrin.gif biggrin.gif
Но работало.Хотя при проверке на большом массиве скорость была ужасная. wink.gif Препод успокоился biggrin.gif biggrin.gif

Это сообщение отредактировал(а) Coocky - 16.5.2004, 23:28


--------------------
Верю в смерть после жизни, в любовь после секса ,в крем после бритья smile        
PM ICQ   Вверх
maxim1000
Дата 17.5.2004, 11:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 3334
Регистрация: 11.1.2003
Где: Киев




Цитата
А что вы скажете про разницу между:
for (i=0;i<n;i++) и for(i=n-1;i>=0;i--)
Какой цикл по вашему лучше, если n - переменная и порядок обхода не важен?

по мне так лучше первый вариант: там сразу видно, сколько раз будет выполняться цикл, да и вообще увеличение индекса мне кажется более естественным...


--------------------
qqq
PM WWW   Вверх
Дрон
Дата 17.5.2004, 15:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Java-ненавистник :)
****


Профиль
Группа: Участник Клуба
Сообщений: 3179
Регистрация: 29.12.2002
Где: Санкт-Петербург




maxim1000
Ну да, первый естественней для человека, но второй для компутера -- сравнение с 0 гораздо лучше, чем сравнение с некой переменной -- выполняться будет быстрее (на моём компе на 30% быстрее).



--------------------
Да. Именно так.
PM   Вверх
Vyacheslav
Дата 21.5.2004, 09:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 2124
Регистрация: 25.3.2002
Где: Москва




Цитата


А что вы скажете про разницу между:
for (i=0;i<n;i++) и for(i=n-1;i>=0;i--)
Какой цикл по вашему лучше, если n - переменная и порядок обхода не важен?

Лучше будет вот этот
for(int i = n;i--;)
{
...
}


--------------------
С уважением, Вячеслав Ермолаев
PM MAIL WWW ICQ   Вверх
Страницы: (3) [Все] 1 2 3 
Ответ в темуСоздание новой темы Создание опроса
Правила раздела «Флейм»
Sneg0k

Добро пожаловать в «Флейм».

В разделе не действуют многие правила:

  • Можно оффтопить(умеренно)
  • Можно общаться на темы, не только связанные с программированием.

Строго запрещено:

  • Размещать рекламу
  • Обсуждать политику
  • Оскорблять друг-друга и переходить на личности
  • Наезжать, провоцировать других участников форума
  • Материться
  • Троллить

Напоминаем о существовании волшебной кнопочки "Репорт". Если вы увидели сообщение, несовместимое с жизнью, просьба подвести на нее курсор и клацнуть левой клавишей мышки. Тем самым вы сможете призвать злого, но жутко справедливого джина-модератора, который нашлет порчу на злостного нарушителя. Кстати - счётчик сообщений здесь не растёт.


Глас Винграда:


Глас Философии:


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Sneg0k

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Флейм | Следующая тема »


 




[ Время генерации скрипта: 0.0835 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.