Julia 挖坑Julia

Julia之坑数学计算

2018-08-31  本文已影响62人  黑猫中度烘焙

Julia在计算阶乘的时候,如果阶乘数超过21,便会出错,但是如果加一个big()便可以计算了

julia> factorial(big(21))
51090942171709440000

过去不知道的一个小技巧啊!
如果需要建立一个函数对应的词典,则先创造一个词典,比如通过

julia> a = Dict(1=>"one",2=>"two")
Dict{Int64,String} with 2 entries:
  2 => "two"
  1 => "one"

对应的此点就有了key和values

julia> keys(a)
Base.KeySet for a Dict{Int64,String} with 2 entries. Keys:
  2
  1
julia> values(a)
Base.ValueIterator for a Dict{Int64,String} with 2 entries. Values:
  "two"
  "one"

词典建立也可以简单循环创造出词典,比如计算正弦角度值

julia> dict = Dict(string(i) => sind(i) for i = 0:5:360)
Dict{String,Float64} with 73 entries:
  "320" => -0.642788
  "65"  => 0.906308
  "155" => 0.422618
  "335" => -0.422618
  "75"  => 0.965926
  "50"  => 0.766044
  "190" => -0.173648
  "270" => -1.0

这样每一个计算的值都有一个对应的keys,这点非常有用。

编辑一个计算shannon-wiener指数的函数

a = [25,25,25,25]
swH(a)
return 2

可以的

上一篇下一篇

猜你喜欢

热点阅读