Страница 2 из 4

О программировании ;-))

Добавлено: 12 авг 2002, 13:28
Aerostar
Версия на bc (если кому-нибудь это интересно). Причем, fact(200) тоже работает.

define fact (x) {
 if (x <= 1) return (1);
   return (fact(x-1) * x);
}

О программировании ;-))

Добавлено: 12 авг 2002, 14:18
leikind
php версия от tren

function factorial($a) {
       if($a == 0)
               return 1;
       else
               return $a*factorial($a-1);
}
print factorial(5);



(Отредактировал(а) leikind - 16:42 - 12 Авг., 2002)


(Отредактировал(а) leikind - 20:33 - 12 Авг., 2002)

О программировании ;-))

Добавлено: 12 авг 2002, 21:36
ab
2ab а в Ruby, что есть оптимизация хвостовой рекурсии?
Есть дополнительный модуль, который занимается оптимизацией http://www.ruby-lang.org/en/raa-list.rh ... ion+Module
Он в том числе оптимизирует и хвостовую рекурсию.

О программировании ;-))

Добавлено: 14 авг 2002, 20:43
leikind
# python версия от tren
# вместо пробелов обязательно должны быть табуляции
def factorial(a):
  if a == 0:
        return 1
  else:
        return a * factorial(a-1)

print factorial(4)


(Отредактировал(а) leikind - 21:46 - 14 Авг., 2002)

О программировании ;-))

Добавлено: 14 авг 2002, 20:49
leikind
А вообще плохой пример для того, чтобы что-то показать. Слишком простой. Да и не интересно никому ;)

О программировании ;-))

Добавлено: 18 авг 2002, 03:54
eof
2leikind
А что там слышно о вашем с А. Боковым проекте?

О программировании ;-))

Добавлено: 18 авг 2002, 16:05
leikind
ну это громко очень названо, прoект.
нехватка времени....

О программировании ;-))

Добавлено: 18 авг 2002, 16:50
Aerostar
А что за проект, если не секрет? Случайно, не то, что у тебя на сайте?

О программировании ;-))

Добавлено: 22 авг 2002, 19:07
ab
Проект цикла лекций по современным подходам в проектировании объектно-ориентированных систем. В качестве языка демонстраций выбран Ruby.

О программировании ;-))

Добавлено: 22 авг 2002, 19:53
Aerostar
!!!

О программировании ;-))

Добавлено: 28 авг 2002, 08:02
Llama
Звиняй, певый кусок кода можно читать, не напрягая мозги в поиске завалявшегося там perldoc по поводу некоторых особенностей синтаксиса. Красиво, конечно, но не очень удобно если в параллели пишеш еще и на C.

О программировании ;-))

Добавлено: 28 авг 2002, 12:27
leikind
Уважаемый Незарегистрированный Guest,
если Вы считаете, что искусство программирования заключается в том чтобы уместить в одной строчке кода как можно больше операторов и сделать код как можно менее понятным, то пожалуйте в Obfuscated Perl Contest или как оно там называется.

Кстати, пора выучить что-то еще помимо этого awk-переростка и открыть для себя, что в остальном мире приняты несколько другие идеалы, чем в Перле.

О программировании ;-))

Добавлено: 28 авг 2002, 15:07
Aerostar
Народ! Я знаком с большим количеством программистов - и у каждого свой стиль. Так что им теперь-перегрызться друг с другом? Как говорится: "на вкус и цвет...".
А для современных компиляторов - что это:
if(...) {
    return A;
} else {
   return B;
}
Что это:
if(...) {
  return A;
}
return B;
Результат будет один.

О программировании ;-))

Добавлено: 28 авг 2002, 16:59
leikind
Котик, я прекрасно знаю что ()? :  есть в С.
Однако читабельность подобных конструкций  под вопросом.
Ну а насчет научиться программировать, ты имеешь ввиду употреблять тернарную запись вместо if ? Это и есть уметь программировать? А употребление
if(...) {
  return A;
}
return B;

вместо

if(...) {
    return A;
} else {
   return B;
}

это тоже искусство программирования ? Я потрясен

P.S.
Зарегистрируйся

О программировании ;-))

Добавлено: 28 авг 2002, 19:36
Llama
2Guest
Первые два условия, ИМХО, на порядок важнее третьего.