?

Log in

No account? Create an account

Previous Entry | Next Entry

Злобный Дима задал задачку - написать сортировку четырех введенных чисел без использования массивов, циклов и дополнительных переменных. Два дня решала, думала - свихнусь. 24 комбинации вручную перебрать - ни фига себе! Чуть какую-нибудь комбинацию пропустишь по невнимательности - и "очень сказка хороша, начинай сначала". Сегодня к вечеру написала таки. А Дима пришел с работы и моментально нашел баг. Причем опять же, по невнимательности, по ошибке, одну комбинацию не в тот if запихала. Решила. Проверили. Багов нет. Дима подобрел и разрешил переписать, но уже с использованием дополнительных переменных. А я уже не соображаю, у меня уже "1 + 1".
И я как тестила на простейшем примере - "1, 2, 3, 4", так и понеслась писать функцию на голубом глазу: if a == 1 и так далее. Написала, Дима приходит, говорит: "Ага, а если у тебя, допустим, 52 будет - прямо по ходу в функции менять будешь?" Я взвыла. Посидела еще часик, опять переписала. Тестю. А тесты вылетают. Я опять взвыла. Пошла к Диме, говорю: "Сдаюсь я, сил моих дамских больше нет" - "Давай я посмотрю". Посмотрел. В две секунды на примере показал, что неравенства должны быть нестрогие. Переписала. Протестила. Работает.
В голове звенит, двое суток непонятно куда делись, ощущаю себя в стиле: "Кто я? Где я? Кто все эти люди?" Порешаю лучше завтра задачек из Димкиной книжки по алгоритмам. Там, по крайней мере, уже псевдокод написан, надо только на Питоне перекодить.
Уфффф!

P.S. Кстати, а никто со мной программированию поучиться не хочет? Я бы сильно порадовалась. Самые базовые вещи, ничего страшного. Ммм?

Comments

dennyrolling
Jul. 26th, 2013 03:13 pm (UTC)
http://en.wikipedia.org/wiki/Sorting_network мне кажется должно неплохо было подойти. там прямо картинка с четырьмя вводами.
archaicos
Jul. 26th, 2013 04:38 pm (UTC)
spoiler! :)
fearless_cat
Jul. 26th, 2013 09:50 pm (UTC)
Оооо, кул! Вот надо было мне этот пост написать до всех мучений, а не после - может, тогда и мучалась бы меньше :)
dennyrolling
Jul. 27th, 2013 04:04 am (UTC)
это о том что полезно учить матчасть перед тем как бросаться выполнять :)
fearless_cat
Jul. 30th, 2013 06:21 pm (UTC)
А Дима наоборот говорит - со схемкой любой дурак напишет. Типа, надо сначала самому побиться, а потом матчасть только посмотреть. Сторонник экспериментов, короче
dennyrolling
Jul. 31st, 2013 01:21 am (UTC)
насчет любого дурака он конечно преувеличивает. а насчет самому побиться, да в курсе:
def fib(n):
  if n in (0, 1): return 1
  return fib(n-1) + fib(n-2)


Edited at 2013-07-31 01:21 am (UTC)
fearless_cat
Jul. 31st, 2013 09:08 pm (UTC)
О, да, над этим я тоже побилась в свое время, в результате чего у меня теперь есть целая отдельная папка fib, в которой хранится 4-5 разных вариантов :)

Profile

fearless_cat
Бывшие канадские ангелы мы

Latest Month

August 2019
S M T W T F S
    123
45678910
11121314151617
18192021222324
25262728293031

Page Summary

Powered by LiveJournal.com
Designed by Tiffany Chow