diff --git a/fibonacci/julia/code.jl b/fibonacci/julia/code.jl index 33f00167..6abecbb9 100644 --- a/fibonacci/julia/code.jl +++ b/fibonacci/julia/code.jl @@ -1,15 +1,5 @@ -# base case 1 -fibonacci(::Val{0}) = 0 -# base case 2 -fibonacci(::Val{1}) = 1 -# general case -fibonacci(::Val{n}) where n = fibonacci(Val(n-1)) + fibonacci(Val(n-2)) +fibonacci(n) = n < 2 ? n : fibonacci(n-1) + fibonacci(n-2) -let - u = parse(Int,ARGS[1]) - r = 0 - for i ∈ 1:u - r += fibonacci(Val(i)) - end - println(r) -end \ No newline at end of file +main(u) = println(sum(fibonacci, 1:u)) + +isinteractive() || main(parse(Int, ARGS[1])) diff --git a/loops/julia/code.jl b/loops/julia/code.jl index 94277366..8908deff 100644 --- a/loops/julia/code.jl +++ b/loops/julia/code.jl @@ -1,12 +1,13 @@ -let +function main(u) a = zeros(Int,10^4) - u = parse(Int,ARGS[1]) r = rand(1:10^4) - @inbounds for i ∈ 1:10^4 - @inbounds for j ∈ 1:10^5 - a[i] = a[i] + j%u + for i ∈ 1:10^4 + for j ∈ 1:10^5 + a[i] += j%u end - a[i] = a[i] + r + a[i] += r end println(a[r]) -end \ No newline at end of file +end + +isinteractive() || main(parse(Int, first(ARGS)))