问题标签 [gnu-smalltalk]
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.
smalltalk - 伯努利数法输入错误 > 1
我正在尝试实现一个返回 n:th 伯努利数的方法,如下所示:
(我已尽力评论代码)。
但是,对于输入 n > 1,我得到了错误的伯努利数:
- n = 0 --> 1(正确)。
- n = 1 --> -1/2(正确)
- n = 2 --> 2/3(应该是 1/6)
- n = 3 --> -7/12(应该是 0)
- n = 4 --> 77/45(应该是-1/30)
- n = 5 --> 3157/9720 (应该是 0)
我的猜测是我以某种方式错误地实现了内部循环或内部循环,因为输入 n < 2 正常工作(并且 n < 2 完全跳过了内部循环)。我正在使用的伪代码也可能不正确,但我对此表示怀疑,因为我昨天才让它在 COBOL 中工作。binom 方法工作正常,我自己测试过。
即便如此,我还是不明白为什么这不能正常工作。任何帮助表示赞赏。
smalltalk - Smalltalk 中与重复的组合
我需要生成 N 个数字的所有可能组合,包括重复。
问题输入:我有 N 个单元格,我可以在每个单元格中的区间 0 到:9 中放置一个数字。
错误的解决方案(N = 4):
不包括 #(0 0 0 0) 、 #(1 1 1 1) 、 #(2 2 2 2) 等。
预期输出(为简洁起见,N = 2,范围为 1-4):
smalltalk - 将 GNU Smalltalk 项目导入 Pharo?
我有大约 1800 行 GNU Smalltalk 代码,我想将其引入 Pharo。我已经开始按类、逐个选择器来做这件事,但这非常耗时且乏味。
有没有办法批量导入项目?我可以很容易地预先调整 GST 源文件的格式,vi
使其更像 Pharo。
我考虑过的另一件事是复制一个“起始”.mcz
文件,感受一下文件的格式source.st
,然后source.st
用 file cat
s 和vi
. 但是还有一个snapshot.bin
文件,其中似乎也有源代码,这使得这条道路变得艰难。似乎应该有一个更简单的方法。我已经用不同的短语搜索了它,但没有找到任何东西。
smalltalk - Smalltalk - 具有多个参数的方法
我正在努力弄清楚如何定义接受多个参数/参数的方法以及如何调用这些方法。
例如,假设我有一个方法doSomething
,它构成了一个类的一部分,其实例名为myInstance
.
在 Java 中:
类中的声明:void doSomething(int param1, int param2) {...};
调用方法:myInstance.doSomething(1, 10);
我将如何在 Smalltalk 中声明然后使用类似的东西?
import - 在 GNU Smalltalk 中导入文件
我是 GNU Smalltalk 的新手。我知道在大多数编程语言中,都有一个//import
命令可以让一个源文件访问另一个源文件的内容。我的问题是,如何在 GNU Smalltalk 中将一个文件导入另一个文件?任何帮助,将不胜感激。谢谢!#include
require
io - Smalltalk stdin nextLine 用于固定数量的输入行
我目前正在尝试获取表单的 3 条特定输入行:
XX.XX (float) XX (1-3 位整数) XX (1-3 位整数)
以下是我拥有的当前代码:
我已经在这进行了 3-4 小时的编程、搜索互联网等。我是一个超级初学者,自学 Smalltalk,所以我想看看为什么 nextLine 没有正确读取输入。以下是输入标准输入的示例输入,以及成绩单显示和检查的结果:
标准输入上的示例输入:
标准输出上的输出:
当我只执行以下代码时,我看到所有 3 个输入由 <10> 分隔,我认为这是回车或换行。
样本输入(标准输入):
输出(标准输出):
所以似乎由于某种原因,代码的第一行是唯一得到的stdin nextLine .
,但其余的只得到最后 3 个字符(小数点和小数点后的 2 个数字)。我不确定为什么会这样。
我试过nextAvailable
, flush
, commit
, stdin close
, 和其他一些方法,都无济于事。我的一个想法是解决这个问题是只得到整体stdin contents
,除以 <10>,然后将每个“部分”保存到 3 个不同的变量,但我想了解更多关于如何stdin nextLine
工作并更好地理解这也有关系stdin contents
。stdin nextLine
鉴于我们知道只有 3 个输入,有没有好的方法只做3 次?
command-line-interface - GNU Smalltalk 命令行参数解析解释/文档
GNU Smalltalk 安装附带的脚本使用以下代码来解析命令行参数:
困扰我的是:
我不明白那里发生了什么。我知道:
返回传递给命令行的字符串数组,但在这种情况下,看起来方法正在使用参数 '-h|--help --usage --version' 调用?我想知道如何将此字符串与参数数组进行比较,以及如何提取命令行开关?指向文档或解释的链接将非常有价值。
smalltalk - Smalltalk中的Array和Literal Array有什么区别?
除了大小。
例如:
和
smalltalk - 如何使用多行输入来创建我的游戏?
所以,我有一种方法可以为创建游戏的其他方法创建所有实例变量,我知道如何单独执行它们,但是从一种方法中找到如何执行它真的很难。
我需要从必须单独处理每一行的字符串中读取数据。
我正在使用 Pharo。
类游戏,一切都在一个游戏类中。
游戏:实例变量:'rol col'。使用实例方法。