问题标签 [brainfuck]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c - BrainFuck 实现问题:
我坐下来尝试实施 BrainFuck。语法看起来很简单。我很难让这件愚蠢的事情发挥作用。我已经有一段时间了;我承认我需要睡觉。也许这就是问题的全部。解释器没有输出任何东西。我很确定问题很简单。而且我知道在我更好地掌握了我希望这个程序前进的方向之后,我需要模块化一些函数调用。为什么我没有输出?
main.c
list.h
list.c
test
是 BrainFuck “你好世界”
java - Java substr 没有按预期工作
因此,我正在用 Java 制作一个笨拙的解释器,除了 [ 和 ] 之外,我没有任何问题。(不可避免地)问题在于解析字符串。所以我处理循环的方法是将代码定位在两个括号之间,然后调用函数(递归)来重做括号内的代码。这在纸上听起来不错,但substring
不与我合作。这是我处理 [
我对缩进表示歉意,它没有很好地从 Netbeans 复制。但无论如何,正如您在代码顶部看到的那样,我创建了一个名为“codeSection”的变量,它应该包含正确的文本。这是我为参数“brainfuck”给出的内容:+++[>+++++ +++++<-]>+++.
这是我打印变量时得到的内容:
是的,我用 System.out.println 打印变量,我打印了两个不同的东西。第一次,它是正确的字符串。我第二次得到处理的内容,并且没有右括号。我在brainfuck的代码中安装了一个错误检查系统,所以我可以检查一下。我得到了我应该的错误。(错误:没有右括号(0))我真的对此感到茫然和困惑,因此非常感谢提供的任何帮助。
PS 额外代码,例如它的调用位置等:它的调用位置:
(它在一个包含所有这些变量的类中)其中 main 是:
再次感谢
text - 我如何解码这个程序?
我怎样才能解码这个奇怪的文本?
这个文本应该是一个程序。
c - c中的brainf * ck解释器-处理括号循环
我正在用 C 语言编写一个笨拙的解释器。
括号 ( []
) 循环似乎无法正常工作。
编辑:此代码现在正在运行
这是控制括号循环的代码:
该程序正在读取包含 bf 代码的字符串。对于每个字符,调用 switch 语句的适当部分(每个命令都有大小写)。
当调用 ']' 命令时,程序惯于返回到循环的开头。
谢谢你的帮助!
编辑:在修复了下面指出的一些错误后,我更新以显示实际问题。我在 Ubuntu 14.04 上使用 gdb 调试器。
编辑(再次):该程序现在正在运行,并在下面可用。
编辑(再次(再次)):正如我在下面的评论中所说,最终有各种各样的错误导致问题,所以我没有一个答案来回答我自己的问题。如果有人感兴趣,我将其作为处理括号循环的一种方法的示例。
完整的代码可以在 GitHub 上查看https://github.com/underscorejho/bfi
math - 如何在 Brainfuck 中使用模数等数学运算符?
+
在 BF 中,我知道您可以使用and运算符进行加减-
运算,并且您可以将两个预定义的数字相乘,如下所示:
但是如何将两个变量相乘,或者使用其他数学运算符,例如取模或除法?
c - c语言中的Brainfuck解释器打印问题
我正在尝试用 C 编写一个非常简单的brainfuck 解释器,并且在尝试用我所理解的内容超越某些字符时遇到了问题。
这是我的所有代码:
这是有问题的输入(我试图避免实际输入中的其他文本(请记住,这里的所有内容都是输入的一部分,甚至是不必要的文本)我们提供了一个 make 文件,它将输出写入文本文件,并将其与预定义的文本进行比较,问题是我的文本文件以二进制文件的形式出现,我不知道为什么。问题可能隐藏在我的处理方式中[
,]
因为我在没有它们的早期测试
作为某人提出的建议,我这样做了:
然而,问题现在扩展到之前的测试,因为它甚至将它们输出为二进制文件,我认为[
and]
代码有问题,因此它不会正确地增加字段打印不需要的字符,这如何扩展到测试没有它们,只有在它周围放置另一个循环时,我不知道。
编辑:上述循环的问题不是while循环没有通过,问题是它永远不会进入开关,有什么解决方案吗?
c - 在 Brainf*ck 中处理循环
我尝试使用 Brainfuck 中的这个瓶形代码在 c 中测试我的 Brainfuck 解释器:
而不是输出从 99 到 1 的整个“墙上的 99 瓶啤酒”歌曲,它只输出了从 99 到 96 瓶的诗句。Brainfuck 代码或解释器中的循环是否有问题?
这是我的c代码:
add - 我的初学者 Brainfuck 添加程序有什么问题?
我一直在处理这个编程挑战: http: //www.codeabbey.com/index/task_view/summing-up
基本上说:
因此,例如输入将如下所示:
现在,我认为我误解了问题或解决方案,因为我认为解决方案应该是 9、269 26 35
和 35 都在它们自己的单元格中。
我的解决方案返回9 26 35
,我相信正确的单元格(分别为 0,1 和 2),但我得到的答案是错误的。谁能看看问题和我的代码并告诉我哪里出错了?
代码:
brainfuck - 脑残。如何检查回文?
问题是使用Brainfuck检查序列是否为回文。
输入是一个数字序列
如果不是回文则输出0,否则输出 1。
我有一个想法: 比如说,我们有序列1 2 3 2 1。我们可以在变量中记住数组中的第一个单元格(使用操作'!'执行此操作),
- 然后将 1 更改为 0(使用操作'0'执行此操作),数组将为 0 2 3 2 1,
- 然后我们走到数组的末尾,直到遇到 0(使用 '>[>]'执行此操作),
- 然后我们从变量中获取数字并得到序列0 2 3 2 1 1。
- 下一步应该是比较最后两个数字,如果它们相等,则从头开始继续算法,否则做一些事情......
我不知道如何实施最后一步。