Пошевелим мозгами?
|
|
karuy | Дата: Суббота, 23 Апреля 2011, 19:11 | Сообщение # 1 |
заслуженный участник
Сейчас нет на сайте
| Недавно наткнулся на BrainFuck и честно говоря очень понравилось, решать головоломки на етом замечательном языке одно удовольствие =), после разработки програмы для умножения двух чисел начинаеш понимать какой асм удобный и настолько высокоуровневые языки простые, так вот к чему я веду: давайте по'fuck'аем мозг решая до етого дня простые задачи =) Первый таск: Умножыть два числа напечатаных з клавы. Присойденяйтесь у кого маса свободного времени. Если даная тема будет интересная придумаем ещо заданий, нет - выложу тут код и тему в корзину.
|
|
| |
VinoVoz | Дата: Суббота, 23 Апреля 2011, 19:40 | Сообщение # 2 |
участник
Сейчас нет на сайте
| karuy, почитал о этом "ЯП" был сильно удивлен, он сильно отличается от того "к чему привыкли".
|
|
| |
noTformaT | Дата: Суббота, 23 Апреля 2011, 19:43 | Сообщение # 3 |
Ukrainian independent game developer
Сейчас нет на сайте
| Quote (karuy) Умножыть два числа напечатаных з клавы. нельзя, брайнфак работает с машиной на подобие машины тюринга, тоесть со стеком, ввод с клавиатуры там не возможен Он есть, но это абстрактно
@noTformaT
|
|
| |
Pesets | Дата: Суббота, 23 Апреля 2011, 20:23 | Сообщение # 4 |
постоянный участник
Сейчас нет на сайте
| Да, веселая вещь) Вообще люблю экзотерические языки) Вот накатанная на коленке прога по умножению 2х чисел: ,>,[-<[-<+<+>>]<<[->>+<<]>>>]<<. Учитывая то, что в Брейнфаке нет стандарта относительно ввода, я считал, что "," будет заносить в ячейку памяти введенное с клавиатуры число. А вот если считать, что ввод идет побайтово, то это даже на ассемблере не совсем тривиальная задача - распарсить последовательность байт как число, а уж на Брейнфаке...
|
|
| |
karuy | Дата: Суббота, 23 Апреля 2011, 20:26 | Сообщение # 5 |
заслуженный участник
Сейчас нет на сайте
| Но все-таки есть Жду от вас умножения юние брейнфакери
|
|
| |
Master_Chief | Дата: Суббота, 23 Апреля 2011, 20:55 | Сообщение # 6 |
Shoot Space creator
Сейчас нет на сайте
| Pesets, правильнее говорить всё-таки "эзотерические" а не "экзотерические"
|
|
| |
|
karuy | Дата: Воскресенье, 24 Апреля 2011, 11:22 | Сообщение # 8 |
заслуженный участник
Сейчас нет на сайте
| Pesets, запустил твой код, все работает, если правда на коленке делал респект, вот мой вариант умножения: ,>,<[ >[->+>+<<] >>[-<+<+>>] <<<-]>>[-->+<]. Правда у меня больше нет тасков, если у кого есть какие - нибудь идеи: пожалуста, но конешно в пределах разумного.
|
|
| |
Pesets | Дата: Воскресенье, 24 Апреля 2011, 17:49 | Сообщение # 9 |
постоянный участник
Сейчас нет на сайте
| Как насчет такого таска - напечатать таблицу символов ASII (0-255 символы). Считать, что команда "." выводит символ с кодом, равным числу в текущей ячейки. Мой вариант: ЗЫ. А проги для умножения чисел у нас с тобой почти одинаковые)
Сообщение отредактировал Pesets - Воскресенье, 24 Апреля 2011, 17:50 |
|
| |
karuy | Дата: Воскресенье, 24 Апреля 2011, 18:20 | Сообщение # 10 |
заслуженный участник
Сейчас нет на сайте
| =) Если я правильно понял таск - мой вариант: +[+.] На выходе:
|
|
| |
Pesets | Дата: Понедельник, 25 Апреля 2011, 08:25 | Сообщение # 11 |
постоянный участник
Сейчас нет на сайте
| Ну, тут нюанс в том, что число в ячейке может быть больше 255. На реализации брейнфака где, например, 4-байтовые ячейки твоя прога выведет кучу мусора)
|
|
| |
noTformaT | Дата: Понедельник, 25 Апреля 2011, 10:01 | Сообщение # 12 |
Ukrainian independent game developer
Сейчас нет на сайте
| Quote (Pesets) Ну, тут нюанс в том, что число в ячейке может быть больше 255. На реализации брейнфака где, например, 4-байтовые ячейки твоя прога выведет кучу мусора) ну в 4 байтовых ячейках не хранят 1 байтовые символы
@noTformaT
|
|
| |
Pesets | Дата: Понедельник, 25 Апреля 2011, 13:16 | Сообщение # 13 |
постоянный участник
Сейчас нет на сайте
| А кто сказал, что символы однобайтовые? Например, у меня где-то валяется реализация брейнфака, которая при проге +[+.] выведет всю юникодовую таблицу. Добавлено (25.04.2011, 13:16) --------------------------------------------- В брейнфаке ничего в байтах не меряется. В ячейке может храниться бесконечно большое число, причем даже не документировано, может ли оно быть отрицательным.
|
|
| |
DDTAA | Дата: Понедельник, 25 Апреля 2011, 13:58 | Сообщение # 14 |
заслуженный участник
Сейчас нет на сайте
| Мужики, давайте ещё задачек:-) Затягивает, жуть!
Да, я новичок, поэтому вопросы у меня иногда глупые...... Да, у меня действительно такой ник....... ...А я не знаю, почему по профилю мне 28 лет и я Адольф:-)...
|
|
| |
TimKruz | Дата: Понедельник, 25 Апреля 2011, 14:09 | Сообщение # 15 |
старожил
Сейчас нет на сайте
| Ну, например, такая задача: записать в две ячейки два числа, перемножить их и вычесть из них третье число, затем вывести результат. Кто решит? А я про этот язык давно узнал. Только какой-то он не интересный, хотя является реальным языком программирования. Делать в нём особенно-то нечего...
|
|
| |
karuy | Дата: Понедельник, 25 Апреля 2011, 18:23 | Сообщение # 16 |
заслуженный участник
Сейчас нет на сайте
| Мой вариант =): ,>,>>>,<<<<[ >[->+>+<<] >>[-<+<+>>] <<<-]>>[-->+<]>>[-<->].
|
|
| |
froex | Дата: Суббота, 07 Мая 2011, 02:06 | Сообщение # 17 |
Руководитель Froexilize team
Сейчас нет на сайте
| >>+++++++>>++>>++++>>+++++++>>+>>++++>>+>>+++>>+>>+++++>>+>>++>>+>>++++++>>++>>++++>>+++++++>>+>>+++++>>++>>+>>+>>++++>>+++++++>>+>>+++++>>+ >>+>>+>>++++>>+++++++>>+>>+++++>>++++++++++++++>>+>>+>>++++>>+++++++>>+>>+++++>>++>>+>>+>>++++>>+++++++>>+>>+++++>>+++++++++++++++++++++++++ ++++>>+>>+>>++++>>+++++++>>+>>+++++>>++>>+>>+>>+++++>>+>>++++++>>+>>++>>+>>++++++>>+>>++>>+>>++++++>>+>>++>>+>>++++++>>+>>++>>+>>++++++>>+>> ++>>+>>++++++>>+>>++>>+>>++++++>>++>>++++>>+++++++>>+>>+++++>>+++++++>>+>>+++++>>+>>+>>+>>++++>>+>>++>>+>>++++++>>+>>+++++>>+++++++>>+>>++++ >>+>>+>>++>>+++++>>+>>+++>>+>>++++>>+>>++>>+>>++++++>>+>>+++++>>+++++++++++++++++++>>++>>++>>+++>>++>>+>>++>>++++>>+++++++>>++>>+++++>>+++++ +++++>>+>>++>>++++>>+>>++>>+>>++++++>>++++++>>+>>+>>+++++>>+>>++++++>>++>>+++++>>+++++++>>++>>++++>>+>>++++++[<<]>>[>++++++[-<<++++++++++>>]<<++..------------------->[-<.>>+<]>[-<+>]>]<<[-[-[-[-[-[-[>++>]<+++++++++++++++++++++++++++++>]<++>]<++++++++++++++>]<+>]<++>]<<[->.<]<<]
Не превращайте форум в чат. Пишите более развернуто и понятно - всё равно вас попросят объяснить подробнее. Алгоритмы, программирование, оптимизация, тестирование, ведение проектов. Ищу художника, дизайнера, тестера, программистов С и С++ Обучаю процессам разработки и программированию.
Сообщение отредактировал froex - Суббота, 07 Мая 2011, 02:08 |
|
| |
Black_Lord | Дата: Суббота, 07 Мая 2011, 09:02 | Сообщение # 18 |
был не раз
Сейчас нет на сайте
| Да, BrainFuck весьма любопытный язык.
|
|
| |
K0DAK47 | Дата: Суббота, 07 Мая 2011, 11:18 | Сообщение # 19 |
Cat Development
Сейчас нет на сайте
| Да, только функционал его оставляет желать лучшего, так, побаловаться. Мне больше нравятся диалекты Брейнфака: Moo и Ook. MoO moO MoO mOo MOO OOM MMM moO moO MMM mOo mOo moO MMM mOo MMM moO moO MOO MOo mOo MoO moO moo mOo mOo moo
.xm Шаблон для разработчиков
|
|
| |
netkiller | Дата: Суббота, 07 Мая 2011, 12:08 | Сообщение # 20 |
Developing Vader
Сейчас нет на сайте
| 'MoO moO MoO mOo MOO OOM MMM moO moO MMM mOo mOo moO MMM mOo MMM moO moO MOO MOo mOo MoO moO moo mOo mOo moo' Этo COW.
Мой туториал по UDK: Создание простого платформера
|
|
| |