问题是使用Brainfuck检查序列是否是回文序列。

输入是一个数字序列

输出 0如果不是palindorme,否则为1。

我有一个想法:说,我们有sequance 1 2 3 2 1 我们可以在变量中记住我们数组中的第一个单元格(使用'!'操作),

  • 然后将1更改为0(使用操作'0'执行此操作),数组将为0 2 3 2 1,
  • 然后我们到数组的末尾,直到我们遇到0(使用'> [>]'执行此操作),
  • 然后我们从变量中获取数字并获得sequance 0 2 3 2 1 1。
  • 下一步应该是比较两个最后的数字,如果它们是相等的继续算法从开始做其他事情......

我不知道如何实施最后一步。

===============>>#1 票数:2

如果我不写整个程序在brainfuck,请原谅,

这是主要的想法:

  1. 读取输入(指针后面应该是最后一个字符)
  2. 记住性格
  3. 将值设置为0
  4. 转到第一个[<]
  5. 与记忆的角色比较(参见Brainfuck比较2个数字大于或小于
  6. 如果不相等,请打印1
  7. 如果下一个(>)单元格数组为0,则打印0
  8. 移动到指向结束[>]的指针
  9. 回到第2步

  ask by d40a translate from so

未解决问题?本站智能推荐:

4回复

在Brainfuck中将数字乘以2?

给定任意长的数字,我如何输出其双精度数? 我知道如何将小数相乘,只要结果是<10,但是像32984335这样的大整数又将类似的值加倍呢? 我不知道处理这种事情的正确方法。
1回复

是否有Brainfuck API?

所以我偶然发现了Brainfuck问题,我想知道它的任何编译器/解释器是否提供API? 我将提出有关访问其他API的单独问题。
2回复

BrainFuck实施问题:

我坐下来尝试实施BrainBuck。 语法似乎很简单。 我无法让这愚蠢的事情起作用。 我已经有一段时间了。 我承认我需要睡觉。 也许这就是所有问题。 解释器未输出任何内容。 我很确定这个问题很简单。 我知道我需要更好地掌握该程序的发展方向之后,需要对一些函数调用进行模块化。 为
2回复

从HTML中提取brainfuck代码

所以我需要从一些HTML中提取一些brainfuck代码,到目前为止我一直在做的事情是行不通的。 HTML看起来像这样 我正在使用Python和BeautifulSoup。 我可以从整个文件中抓住div很好,但我似乎无法从中间获得整个脑袋 标签。 我该怎么做呢? 谢谢
2回复

Brainfuck的用途是什么? [关闭]

是否有任何确认(由创作者记录等)使用或特征于Brainfuck的特征?
2回复

Brainfuck细胞打印环

如何在Brainfuck中创建一个循环以打印单元格“ x”次? 例如: 这将打印“ z”,但是我想重复“ z”超过100次,如何不使用“。”来做到这一点。 连续使我的代码尽可能简洁? 任何帮助,将不胜感激!
3回复

端口dos2unix到brainfuck

我在SuperUser.com上讨论了无用的答案,并发现自己挑战另一张海报来回答brainfuck中的问题。 他并没有接受我,但现在我很好奇。 所有程序需要做的是将CRLF行结尾转换为LF(dos-style到unix)。 周围的任何bf编码器可以帮忙吗?
3回复

scala中的Brainfuck编译器

想要练习一些领域特定语言(DSL),首先想到的是编写Brainfuck的解释器或编译器。 第一个想法是覆盖函数,例如它们将表现为Brainfuck命令: ">" , "<" , "+" , "-" , "." , "," , "[" , "]" 。 不幸的是,你无法将decal
2回复

在brainfuck中的数字总和

我想知道是否有可能只用代码开头的数字k来计算brainfuck中1 + 2 + 3 + ... + k的总和? 例如,可以像这样做1 + 2 + 3: +++> (这里代码创建一个两个添加它与三个,创建一个并添加它) 因为我可以这样做: +++>++>+[&l
3回复

你好,世界! 在Brainfuck

以下代码段来自Wikipedia,是标准Hello World的序言! Brainfuck中的程序... 我了解这里发生的事情的要旨,但我不了解的是第3至6行发生的事情的机制。如果+++++ +++++将a[0]的值加10 ,为什么将指针加1并执行++*ptr 7次导致a[1]等于70