我有以下函数,它只从列表中返回奇数
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库中,为什么简化的声明不起作用?
提前致谢
大家好
我不明白为什么在导入 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)
提前致谢
我有以下问题。我的目标是实现函数,返回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 提前致谢,
我需要实现在列表头部插入两个元素的函数,但我得到
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)
提前致谢
现在我正在用这样的符号编写 SQL 查询: ' 但解释器将字符串视为开始。我试着做以下'String1'+%s'+'String2'
如何得到
String1 ' String2?
提前致谢