问题标签 [imperative-programming]

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.

0 投票
2 回答
1180 浏览

scala - 循环嵌套列表的功能方法

我被要求比较两棵树。如下所示:

为了比较树的每个元素,我有以下功能:

基本上算法是针对 n1 中的每个元素,我们正在检查 n2 中的匹配。有人告诉我,这是非常必要的方式,而不是功能性的方式。什么是实现这种行为的实用方法。换句话说,我们如何在比较孩子列表时删除while循环?

0 投票
1 回答
366 浏览

functional-programming - 函数式编程的开销

Rust by Example #36中,奇数的总和达到一个限制是用命令式和函数式两种方式计算的。

我将这两个分开并将上限增加到 10000000000000000 并计时结果:

命令式:

功能风格:

功能版本运行速度较慢,编译时间也稍长。

我的问题是,是什么导致功能版本变慢?这是函数式风格所固有的还是由于编译器没有尽可能优化?

0 投票
2 回答
174 浏览

c - 在 C 中练习计算从 x 到 y 的总和

我的老师想要从 x 到 y 的所有数字的总和……比如 x+(x+1)+(x+2)……直到 y。但我认为我在这里做错了什么!

有人可以告诉我这里有什么问题吗?

0 投票
0 回答
73 浏览

scala - 如何使函数式风格与 Scala 中的命令式风格完全一致

在一本关于 Scala 编程的书中,我遇到了这个例子。他们说这个命令式代码的例子

可以“翻译”成这样的功能风格:

但对我来说,这两个代码并不完全相同,第二个代码完全缺少变量“i”。因此,如果我想将它与字符串的值一起打印,我不能在第二个示例中这样做,或者我可以吗?如何?

0 投票
1 回答
345 浏览

scala - 如何在 Scala 中将命令式双 for 循环转换为函数式而不返回?

我有以下 Scala 代码,命令式风格,我想知道是否有功能风格的等价物避免使用return

我想知道是否有替代方案,与这个一样有效,而无需使用return.

0 投票
1 回答
20 浏览

imperative-programming - 你称它为 Gator <,> 吗?

“<”和“>”的公认名称是什么?我总是使用“open gator”和“close gator”。

0 投票
0 回答
69 浏览

imperative-programming - 认知建模语言 (CML) vs 命令式编程 vs 声明式编程

我正在阅读 John Funge 撰写的关于计算机游戏认知建模的文章: http
://www.qrg.northwestern.edu/resources/aigames.org/1999/fungegame99.pdf 并在此 URL 中进一步详细阅读:
http://www.msci.memphis.edu/~classweb/public_html/comp7990/Spring2000/Wally/Presentation5/tsld014.htm

我很难理解 CML:我知道它是命令式和声明式编程之间的某种混合,我只是不明白如何:

例如命令式编程中的以下伪代码:

声明一个名为 ExpensiveItemsNames 的新列表;
Foreach 项目中的项目:
如果 ItemPrice > 100 则将 ItemName
添加到 ExpensiveItemsNames

vs 声明式版本:(使用 SQL)


ItemPrice > 100 的项目中选择项目名称

它的 CML 版本是什么?
CML 如何帮助程序员?我也不明白。

同样,在更详细的(如前所述 - 意思是我放的第二个链接)网站中,他们还谈到了修剪以降低空间复杂性。
虽然我知道什么是修剪,但我无法理解它与 CML 的关系。目前对我来说,它们看起来像是两件不相关的事情。

0 投票
3 回答
703 浏览

c - C:如何在另一个函数中转发一个函数的返回值?

我目前正在尝试用 C 编写一个具有以下结构的程序:

如何 - 如果可能的话 - 我可以让 beta 返回 alpha 的返回值吗?

我意识到这是一个愚蠢的结构,但不幸的是,为了使用头文件,这是必要的。

0 投票
1 回答
349 浏览

functional-programming - 自动机理论和函数式编程

我最近开始学习函数式编程并开始使用 Haskell。函数范式与其他范式的根本区别在于,我们不维护状态,也没有命令范式中的计算。命令式编程背后的基本理论是自动机理论,而自动机理论是计算机的基础。

话虽如此,我看不出自动机理论和函数式编程之间有任何关系。那么函数式编程是否彻底改变了编程的基础?

0 投票
4 回答
161 浏览

c - C程序找根错误

我正在用 C 语言编写一个具有以下规范的函数:

find_root取二次方程的系数 a,b,c 和区间 (p, q). 它将在给定的区间内返回这个方程的根。

例如:find_root(1, -8, 15, 2, 4)应该产生一个根“接近” 3.0

我已经编写了以下代码,但我不明白为什么它不起作用:

请让我知道错误是什么。