ibash.org.ru - Новый цитатник Рунета

Форум: Brainfuck 1 > [RSS]

Форум: Вход Регистрация Участники Поиск RSS

VovanZ
07.01.2010 - 17:48

Для лулзов написал прогу на брейнфаке которая суммирет два числа состоящие из одной цифры:
>>>>>>+<<<<<<
>,------------------------------------------------>
,------------------------------------------------<
[->+<]
>[<+>->+<]++++++++++
[->[->>]<<<]
>>>>++++++++++++++++++++++++++++++++++++++++++++++++.<<<<
>++++++++++++++++++++++++++++++++++++++++++++++++.

И ещё один программизм - прога на делфи, которая преобразует код на брейнфаке в код на делфи:
program Project1;

{$APPTYPE CONSOLE}

uses
SysUtils;

var
infile, outfile : text;
infiledir, outfiledir : string;
a : char;
max : integer;
begin
writeln('Input file - ?');
readln(infiledir);
writeln('Output file - ?');
readln(outfiledir);
writeln('Max - ?');
readln(max);
assignfile(infile, infiledir);
reset(infile);
assignfile(outfile, outfiledir);
rewrite(outfile);
writeln(outfile,'program brainfuck;');
writeln(outfile);
writeln(outfile,'{$APPTYPE CONSOLE}');
writeln(outfile);
writeln(outfile, 'var');
writeln(outfile, 'n, max : integer;');
writeln(outfile, 'b : char;');
writeln(outfile, 'a : array of byte;');
writeln(outfile);
writeln(outfile, 'begin');
writeln(outfile, 'n:=1;');
writeln(outfile, 'max:=',max,';');
writeln(outfile, 'setlength(a, ',max,');');
repeat
read(infile, a);
case a of
'>': writeln(outfile, 'n:=n+1;');
'<': writeln(outfile, 'n:=n-1;');
'+': writeln(outfile, 'a[n]:=a[n]+1;');
'-': writeln(outfile, 'a[n]:=a[n]-1;');
',': writeln(outfile, 'read(b); a[n]:=ord(b);');
'.': writeln(outfile, 'write(chr(a[n]));');
'[': writeln(outfile, 'while a[n]<>0 do begin');
']': writeln(outfile, 'end;');
end;
writeln(outfile, 'if n<1 then n:=max;');
writeln(outfile, 'if n>max then n:=1;');
until EOF(infile);
writeln(outfile, 'readln; readln; end.');
close(infile);
close(outfile);
end.

.:Eric Gurt:.
#1 - 07.01.2010 - 17:59

круто

unikoid
#2 - 07.01.2010 - 18:08

>прога на делфи
Переписать на Pure Pascal, быстро, решительно! Тем более, что тут, по сути нужно только выкинуть Uses, {$APPTYPE} и заменить assignfile на assign.
//Да, можно было бы хоть какую-нибудь оптимизацию сделать простейшую, да и вместо запроса max у пользователя - 2 прохода или динамический массив (или нету таких в пасквиле?)

VovanZ
#3 - 07.01.2010 - 22:00

#2 - по поводу оптимизации - если чесно было лень, писал на скорую руку за 15 минут, что такое Pure Pascal я не знаю, но этот код можно скомпилить в Free Pascal, в режиме совместимоти с делфи, на любой платформе.

#4
#4 - 08.01.2010 - 00:41

>Для лулзов написал прогу на брейнфаке которая суммирет два числа состоящие из одной цифры

Это фигня. Вот я для как-то для лулзов начал писать транслятор брэйнфака на брэйнфаке. Реализовал все операции, кроме [ и ], потом забил)

7u3nu7
#5 - 08.01.2010 - 02:46

ТС, большие посты лучше писать первым сообщением, а не нулевым. листать долго((

дятел
#6 - 08.01.2010 - 08:36

КО?

дятел
#7 - 08.01.2010 - 08:37

КО!

VovanZ
#8 - 08.01.2010 - 10:08

#4 - труЪ
#5 - спасибо, в следующий раз учту...

Grigfather
#9 - 08.01.2010 - 11:04

#4, реквестирую код. Будет время - допилю.

Знама, кто
#10 - 08.01.2010 - 11:22

А я сделал процессор, который выполняет программы на брейнфаке в качестве семестровой работы по схемотехнике.

#11
#11 - 08.01.2010 - 11:57

>#4, реквестирую код. Будет время - допилю.

Вот: (надеюсь, разберёшься в моих комментах)
http://www.everfall.com/paste/id.php?121sbpg18yja

Grigfather
#12 - 08.01.2010 - 12:22

Огромное спасибо

Кто, знама
#13 - 08.01.2010 - 12:48

Есть уже готовый транслятор из бф в си, написанный на бф

anonimus
#14 - 08.01.2010 - 16:21

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.
+++++++++++++++++++++++++++++++
[->+>+>+>+>+<<<<<]
>>++
>+++++++++
>++++++++++
>+++++++++++
.
<<<<.
>.
>>.
<.
<<.
>.
>>.

#395
#15 - 08.01.2010 - 16:47

+++++++ + + + + + +++++++++ + + +++++
+ + + + + + + + + + + + + +
+ + + + + + + + + + + + > <+
+ + + + + + + + + + +++++ + >>
+ + +++++++ + + + ++++++ + + + + +
+ + + + + + + + + + + + +
+ + + + +++++++ + + ++ + +++++ + +
+
+

тpолль
#16 - 08.01.2010 - 16:49

#395, это мой форум, тут я троллю, не заходи на чужую территорию!

#395
#17 - 08.01.2010 - 16:58

+++++++........+...........+....+....+........+..........+++++++++..+...........+........+++++......................
+..........+......+...+........+....+....+......+..+................+..........+...........+......+.........+.....................
+..........+.....+.....+.......+....+....+.....+....+...............+..........+...........+......>........<+....................
+..........+....+........+.....+....+....+....+......+..............+..........+++++...+.............>>.......................
+..........+...+++++++....+....+....+...++++++.............+..........+......+...+...........+............................
+..........+..+............+...+....+....+..+..........+............+..........+......+...+........................................
+..........+.+..............+..+++++++.+............+...++....+..........+++++...+...........+...........................
........................................................................+......................................................................
.......................................................................+.......................................................................

дятел
#18 - 08.01.2010 - 17:07

Паша там http://lleo.aha.ru/na/

#395
#19 - 08.01.2010 - 17:24

такой сайт, у меня аж сфинктер сжался..
а для брейнфака компилятор есть?

дятел
#20 - 08.01.2010 - 17:29

http://brainfuck.progopedia.ru/
Интерпретатор brainfuck на JavaScript с открытым исходным кодом

#21
#21 - 08.01.2010 - 17:37

>Интерпретатор brainfuck на JavaScript с открытым исходным кодом
То интерпретатор.
А компилятор сделать легко - прога на брэйнфаке транслируется в любой компилируемый язык (в первом посте, например, есть транслятор в Delphi, так же просто написать транслятор в C), а потом вызывается компилятор этого языка

#395
#22 - 08.01.2010 - 17:43

так же некоторые средства разроботки на bf ещё тут нашёл
http://bf-fan.coolpage.biz/downloads.php

#23
#23 - 08.01.2010 - 17:44

>так же некоторые средства разроботки на bf ещё тут нашёл
Дэто же не труЪ

#395
#24 - 08.01.2010 - 17:53

я обкакался, что мне теперь делать?

anonimus
#25 - 08.01.2010 - 21:27

#395 - зализывай
К списку вопросовСтраницы: 1 >

Быстрый ответ
Имя:      Пароль:    
Текст сообщения:

«ibash.org.ru — Новый цитатник Рунета» Почта вебмастера: imail@ibash.org.ru