小编Nic*_*dio的帖子

函数式编程Python:最小的数字可以被1到20的每个数字整除

我想使用其函数编程功能在python中构建一个while循环,但直到现在我都失败了.

我所取得的成就是代码的和平,它应该计算出每个数字1到20可被整除的最小数字.但它似乎并没有使用函数式编程功能.并且还给出了如下错误:

在"i"的增量行处"运行时错误:超出最大递归深度";

即使这应该限制在20.

def byYmult(x, y): return x % y == 0
def first20div():
    i=0
    for y in range(1,20):
        i += byYmult(x, y)
    return i >= 20

def while_block():
    global x
    if first20div(): 
        print(x)
        return 1
    else:
        x += 1
    return 0

x = 0
while_FP = lambda: ((not first20div()) and while_block() ) or while_FP()
while_FP() 
Run Code Online (Sandbox Code Playgroud)

python recursion functional-programming

1
推荐指数
1
解决办法
157
查看次数

通过C中的命令行传递标点符号

我有一个程序可以从命令行读取自然语言的句子并对其进行处理。

一些标点符号不被接受:或者我收到一条特定的错误消息(例如,当我使用括号时),或者我收到了>(例如,当我键入时'),好像终端仍在等待什么。

一个快速的解决方法是在引号中包含单个“有问题”的单词,但对我来说似乎不是一个很好的解决方法。

难道没有一种方法可以使命令行准备好将任何字符用作有效输入,而无需让“用户”考虑是否要在引号中包含什么吗?

为了完整起见,这就是我编写命令行内容的方式:int main(int argc , char ** argv){我想这是标准方式。

我正在使用最后一个Ubuntu,不知道这是否相关。

c io bash ubuntu program-entry-point

0
推荐指数
1
解决办法
92
查看次数