- 1
- 2
int i=8, a1, a2;
for (a1=a2=1; i>2; a1=(a2+=a1)-a1) i--;
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+1034.8
int i=8, a1, a2;
for (a1=a2=1; i>2; a1=(a2+=a1)-a1) i--;
Вычисление i-го числа из ряда Фиббоначи.
Ответ в а2.
ЗЫ. Эта прога съела мозг учителя в институте. Рекомендую ;)
-1
А по-моему, красивее
for (a1=a2=1; i>2; a1+=a2+=a1)i-=2;
нечетные в a1, четные в a2.
[quote=Говногость]прога из серии "я знаю что в циклах в c/c++ можно писать всякую эзотерическую поебень"
-1[/quote]
По-моему, нормальное использование возможностей языка. Нафиг писать сложнее, когда и так все ясно?
Гениально!
http://www.peeep.us/1d429236
это какая-то хуита
автору линейкой по рукам
"0 за и 2 против"
ай лолд
http://govnokod.ru/853#comment2667
−1.8
"1 за и 0 против"
ай лолд хард
Студент - молодец, преподавателя - сад, коментаторов, которые наезжают на код - в биореактор. Нормальный код, читается на раз, кто не знает элементарных операций и их приоритетов - пусть читают c++ для школьнеГов.
[quote=Йа]Нормальный код, читается на раз, кто не знает элементарных операций и их приоритетов - пусть читают c++ для школьнеГов.[/quote]
почитайте Макконнелла штоле, нешкольнег, прежде чем эдакую хуйню писать
с вводом с консоли и выводом на экран
на язык brainfuck не смотрели, он вам понравиться. я гарантирую это
Ну а если хотя бы даже для себя пишешь, то такого лучше избегать
double mIndex = Index + 1;
double alpha_1_Root = pow( 1.618035, mIndex );
double alpha_2_Root = pow( -0.618035, mIndex );
return 0.4472132 * ( alpha_1_Root - alpha_2_Root );
}
Да, я школоло.
Но не лучше ли так, пусть и с ворнингом, если нужна библиотечная функция?
Макконнелла прочитал, изотерикой не занимаюсь.
А вообще для универа считал вот так -
int Fibonacci(int const lastIndex)
{
int a = 1; // 0 index
int b = 1; // 1 index
int temp = 0;
for ( int i = 1; i < lastIndex; i++ ){
temp = a;
a = b;
b += temp;
}
return b;
} //yes, variable names liek a,b,temp are gay.
int n = 8, a1, a2;
for (a1=a2=1; n-->0; printf("n = %d\n", a2-(a1=(a2+=a1)-a1)));
Разница между реализациями выплыветкогда пинами контроллера нужно будет от балды подергать, ВЧ-синтезатор на атмеге (к чему она вообще не предназначена) реализовать или впихнуть программу управления энергосистемой в 2кб флеша на какой-нить нищебродский 470, тут да, каждый изъебывается сколько может, мереются размерами кода и количеством тактов, до тех пор пока не столкнутся с задачей по сложнее, например, по типу синтеза регулятора реактивного двигателя, вот тогда да, тогда все засовыают свою килобайты пиносв обратно в штаны и работают как приличные люди.
Вообщем такой же бред, как использование рекурсии за пределами рекурентных функций (типа синтеза фильтра Калмана). Элегантно, но нахуй никому не нужно, а может даже и вредно.
Recurrence(Algo::Op::Add<int>, 1, 1).Drop(7).Front()
Если я только с индексом не ошибся.