haskell iterate 迭代示例
来源:互联网 发布:部分元数据已损坏 编辑:程序博客网 时间:2024/06/05 14:19
准备知识
一些系统函数
添加库 :m + Data.Char
减去库 :m - Data.Char
digitToInt ('0...f'--->0---15)
IntTodigit 反一下
ord (字符-->ascii码)
chr (ascii-->字符)
map digitToInt "24324aadddf"
[2,4,3,2,4,10,10,13,13,13,15]
例题
1 生成从a开始的字母序列
take 3 (iterate (\x-> [intToDigit (digitToInt (head x)+1) ] ) ['a'])["a","b","c"]
2 生成形如[a,b....c]的等差数列
func :: Int->Int->Int->[Int]
func a b c = if (b<=a) then takeWhile(>=c) (iterate (+(b-a)) a) else takeWhile(<=c) (iterate (+(b-a)) a)
3 整数转字符串 45->"45"
showint1 = map chr.map(+48).reverse.map(`mod` 10).takeWhile(/=0).iterate(`div` 10)
或
let showint n= map (intToDigit ) (reverse (map (`mod` 10 ) (takeWhile (/=0) ( iterate ( `div` 10 ) n))))
4 字符串转整数
getint1 n = foldl f 0 (map(+(-48)) (map ord n)) where f x y = x*10+y
或
let getint n = last (scanl (\x y -> x*10+y) 0 (map (digitToInt ) (map (head) (takeWhile (/="") (iterate (drop 1) n)))))
- haskell iterate 迭代示例
- logic:iterate,struts标签,叠代,iterate
- Struts(logic:iterate标签) 迭代 Map(HashMap)集合:
- Struts(logic:iterate标签) 迭代 Map(HashMap)集合
- 迭代与递归:To Iterate,Human; to Recurse, Divine.
- 迭代示例
- 迭代开发流程示例
- 实现IEnumable以迭代对象示例
- C # 递归和迭代示例
- 如何反序的迭代一个序列?how do I iterate over a sequence in reverse order
- iterate
- Haskell
- Haskell
- Struts2 中循环迭代的使用示例.
- c# 注册表.代码示例.(迭代遍历注册表)[Demo]
- [AHK]「迭代」和「递归」示例
- 迭代
- 迭代
- Linux之make的用法讲解
- sql2005错误15023:当前数据库中已存在用户或角色
- rose2007破解版
- 双11电商的思考
- ios NSDictionary/JSON转换
- haskell iterate 迭代示例
- BasicDAO 和 SpringDAO的区别
- 如何使用canvas实现多个随机圆运动
- SQL Server中Rollup关键字使用技巧
- 第十一周 项目一(4) 哈夫曼编码的算法验证
- 只考虑自己会严重损害智商——北漂18年(32)
- Cocos2D中使用CCDrawNode绘制几何图形崩溃的解决
- 使用UITextView实现placeholder功能(XIB实现)
- JAVA8中时间的处理