类型类软件设计师的数学之路(2)-四大神器-haskell(15)

PS:今天上午,非常郁闷,有很多简单基础的问题搞得我有些迷茫,哎,代码几天不写就忘。目前又不当COO,还是得用心记代码哦!

    

本博客全部内容是创原,未经书面许可,严禁任何情势的转载。

    

http://blog.csdn.net/u010255642

    12、卫守(guards)

    模式匹配针对的是肯定值,而卫守(guards)则试测值的性特是true还是false,卫守更适合要需对参数用运杂复的件条表达式情况。

numtest ::(Num a,Ord a)=>a->String
numtest testnum
    |testnum <=100 ="<=100"
|testnum <=1000 ="<=1000"
|testnum <=10000 ="<=10000"
|otherwise =">10000"

    加载后行运。

    *Main> numtest 10

    "<=100"

    *Main> numtest 1000

    "<=1000"

    *Main> numtest 10000

    "<=10000"

    *Main> numtest (-1000)

    "<=100"

    *Main> numtest 100000

    ">10000"

    再来看一个解一元二次方程的例子,只有一个未知数且未知数最高次数为2的整式方程叫做一元二次方程,其一般情势为(a≠0)。 

    求根的公式是

    当有两个不相称的实数根,即是0时,有2个相称的实数根,否则是面下两个数复根:

    实现这个任务,我们要需装载数复模块,装载模块的语法为: import 模块名 数复模块的名字是Data.Complex 

    我们在ghci中可以直接用使:m +/- 模块名的式方加载或放释模块。比如:

    Prelude>  :m +Data.Complex

    Prelude Data.Complex>  :m -Data.Complex

    Prelude>

    也可同时装载和放释多个模块

    Prelude>  :m +Data.Complex Data.List

    Prelude Data.Complex Data.List>  :m -Data.Complex Data.List

    Prelude>

    全部装载模块的函数可以在全局命名空间用使。

    数复的表现式方是:实部:+虚部,比如5+12.8i可在haskell中表现为:

    每日一道理
人生好似一条河,既有波澜壮阔,汹涌澎湃,也有清风徐来,水波不兴;人生好似一首歌,既有欢乐的音符,也有悲壮的旋律;人生好似一条船,既有一帆风顺时,也有急流险滩处。愿我们都能勇于经受暴风雨的洗礼,接受生活的挑战和考验!

    Prelude>  :m +Data.Complex

    Prelude Data.Complex> 5 :+12.8

    5.0 :+ 12.8

    Prelude Data.Complex>

    关于数字的类型类,haskell主要有:

    Integral:包含IntInteger类型

    RealFloat:包含FloatDouble 类型

    RealFrac:包含RealFloat类型类,Ratio类型是该类型类的成员

    Floating:包含 RealFloat类型类,Complex类型是该类型类的成员

    Real:包含IntegralRealFrac类型类

    Fractional:包含RealFracFloating类型类

    Num:包含RealFractional类型类

    

文章结束给大家分享下程序员的一些笑话语录: IBM和波音777
  波音777是有史以来第一架完全在电脑虚拟现实中设计制造的飞机,所用的设备完全由IBM公司所提供。试飞前,波音公司的总裁非常热情的邀请IBM的技术主管去参加试飞,可那位主管却说道:“啊,非常荣幸,可惜那天是我妻子的生日,So..”..
  波音公司的总载一听就生气了:“胆小鬼,我还没告诉你试飞的日期呢!”

posted @ 2013-05-07 22:17  坚固66  阅读(177)  评论(0编辑  收藏  举报