找回密码
 欢迎注册
楼主: medie2005

[讨论] 数字乘积

[复制链接]
发表于 2009-2-26 10:05:40 | 显示全部楼层
上面的函数,在大于等于10时多1 实际用要减1
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2009-2-26 10:14:25 | 显示全部楼层
原帖由 无心人 于 2009-2-26 09:58 发表 Haskell :m + List Char Prelude List Char> let prodd n = product \$ map (\x -> (ord x) - (ord '0')) \$ filter (/='0') \$ sort \$ show (n) Prelude List Char> prodd 12 2 Prelude List Char> prodd 1 ...
这里\$相当于.的作用吗?这里这个sort是怎么用的? 还有ord函数我好像也不能用,是不是要import Char? 我也写一个: let prodd n = foldr1 (*) [fromEnum c - fromEnum '0' | c<-show(n), c/='0']
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2009-2-26 10:15:36 | 显示全部楼层
HasKell里面有没有提供判断素数的函数?
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2009-2-26 10:17:55 | 显示全部楼层
有外部库
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2009-2-26 10:19:10 | 显示全部楼层
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2009-2-26 10:19:34 | 显示全部楼层
ord在Char里
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2009-2-26 10:21:09 | 显示全部楼层
\$和.不一样啊 .是函数复合,是高阶函数 \$属于输入, 右面的数据输出输入到左面的输入
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2009-2-26 10:21:50 | 显示全部楼层
最新的结果我在4#里写出来了 算到了8
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2009-2-26 10:27:07 | 显示全部楼层
sort list等于排序 这个函数不用也可以
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2009-2-26 10:28:32 | 显示全部楼层
按你的思路是 let prodd n = product [ ord(c) - ord('0') | c <- show n, c /= '0'];
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
您需要登录后才可以回帖 登录 | 欢迎注册

本版积分规则

小黑屋|手机版|数学研发网 ( 苏ICP备07505100号 )

GMT+8, 2024-11-21 20:43 , Processed in 0.051998 second(s), 21 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表