小编Fed*_*edo的帖子

错误的函数类型声明

我有以下函数,它只从列表中返回奇数

oddsOnly :: Integral a => [a] -> [a]
oddsOnly [] = []
oddsOnly (x:xs)
 |odd x = x : oddsOnly xs
 |otherwise = oddsOnly xs
Run Code Online (Sandbox Code Playgroud)

我的问题是关于使用的目的

积分 a =>

实际上不可能用这样的类型声明来实现这样的功能

赔率 :: [a] -> [a]

据我所知,偶数奇数函数都在标准Prelude库中,为什么简化的声明不起作用?

提前致谢

haskell

7
推荐指数
2
解决办法
66
查看次数

为什么我不能导入模块?


大家好

我不明白为什么在导入 Data.Char 库后尝试导入模块时会出现此类错误?实际上,当我删除模块测试时,一切正常

在此处输入图片说明

import Data.Char
module Test where

sayHello = putStrLn "Hello, world withoutCorona!"

lenVec3 x y z = sqrt ( x ^ 2 + y ^ 2 + z ^ 2 )

sign x = (if x > 0 then 1 else 0) + (if x < 0 then -1 else 0) + 0


twoDigits2Int x y = if isDigit x && isDigit y then digitToInt x * 10 + digitToInt y else 100
Run Code Online (Sandbox Code Playgroud)

提前致谢

haskell

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

递归未终止

我有以下问题。我的目标是实现函数,返回CHARñ次数

GHCi> nTimes 42 3
[42,42,42]
GHCi> nTimes 'z' 5
"zzzzz"
Run Code Online (Sandbox Code Playgroud)

我已经实现了这样的解决方案,但递归并没有结束

nTimes:: a -> Int -> [a]
nTimes a n = a : nTimes a (n-1)
Run Code Online (Sandbox Code Playgroud)

并且函数只是返回一个不可阻挡的数字Chars 提前致谢,

recursion haskell

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

Haskell 函数中的非穷举模式

我需要实现在列表头部插入两个元素的函数,但我得到

Exception: <interactive>:7:5-41: Non-exhaustive patterns in function addTwoElements
Run Code Online (Sandbox Code Playgroud)

该函数的代码如下

addTwoElements a b [xs]= a : b : [xs]
Run Code Online (Sandbox Code Playgroud)

提前致谢

haskell

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

在 python 字符串中使用 ' 符号

现在我正在用这样的符号编写 SQL 查询: ' 但解释器将字符串视为开始。我试着做以下'String1'+%s'+'String2' 如何得到

String1 ' String2?

提前致谢

python python-3.x

-2
推荐指数
1
解决办法
38
查看次数

标签 统计

haskell ×4

python ×1

python-3.x ×1

recursion ×1