LINUX.ORG.RU

переводящая текст в код Brainfuck

То есть тебе нужно, чтобы программа на bf просто распечатала определенную строку?

Manhunt ★★★★★
()
Последнее исправление: Manhunt (всего исправлений: 1)
Ответ на: комментарий от Manhunt

Да, именно так, строка на русском. Вот ее необходимо транслировать в код брейнфака, я когда-то сам писал баш-скрипт перегоняющий текст в код, но это давно было, удалил.

makeB
() автор топика
Ответ на: комментарий от olibjerd

Не понял, чего же ты хочешь.

Допустим есть строка «Тырым, пырым.» вот ее нужно перевести в код брейнфака, при вводе которого интерпретатор выдаст эту строку.

makeB
() автор топика

Напиши сам, дел на пять минут. Инкрементируй, вывод. Инкрементируй/декрементируй, вывод. Продолжать, пока не надоест.

schizoid ★★★
()
Ответ на: комментарий от schizoid

Да блин, это коды символов всех нужных смотреть нужно по таблице, а строка довольно большая, я за***.

makeB
() автор топика
Ответ на: комментарий от makeB

Какие коды? На вход получаешь строку - набор байт. Это чиселки уже, ничего считать не надо. В цикле идёшь по строке, для каждого байта делаешь инкремент до нужного значения в текущей ячейке и вывод. Продолжать до EOF.

schizoid ★★★
()
Ответ на: комментарий от makeB

Конвертор:

#include <stdio.h>

void p(char c, int n)
{
	while(n--) printf("%c", c);
}

int main()
{
	int c, v = 0;
	for( c=getchar(); c!=-1; v=c,c=getchar() )
	{
		if(c < v) p('-', v - c);
		else if (c > v) p('+', c - v);
		p('.', 1);
	}
	return 0;
}
Пример использования:
echo 'Oh hi' | ./a.out

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.+++++++++++++++++++++++++.------------------------------------------------------------------------.++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.+.-----------------------------------------------------------------------------------------------.

Manhunt ★★★★★
()
Ответ на: комментарий от anonymous

Что-то не тянет эта «задачка» на упражнение по профильному предмету. А если предмет непрофильный — то и нечего человека мучать.

Manhunt ★★★★★
()
Ответ на: комментарий от anonymous

Без «непрофильных» предметов получится не специалист, а флюс.

Чем докажешь?

Manhunt ★★★★★
()

Легко :)

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

,[
  <<.<<.>>>.>
  [
    - <<<<<.>>>>>
  ]
  <<<.<<<.>>>>>>
,]
gv
()

Оффтоп, а ведь не сложно на Verilog накатать аппаратное исполнение Brainfuck-процессора... Имея транслятор из высокоуровневого языка...

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от I-Love-Microsoft

аппаратное исполнение Brainfuck-процессора...

Видел где-то уже, правда там AVR, прошитый интерпретатором.

olibjerd ★★★★★
()
Последнее исправление: olibjerd (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.