我正在寻找Julia中的(希望内置)函数来计算组合的数量
我显然可以使用阶乘法来实现自己,但我几乎可以肯定有人已经对此感到担忧.
我正在尝试使用边界在 Julia 中运行 for 循环,其中fI和r是相同长度的数组。我知道这是不正确的,但这是我想要做的要点。
a = zeros(1:length(fI))
for i = 1:length(fI)
a[i] = (fI[i+1] - fI[i])/(r[i+1] - r[i])
end
Run Code Online (Sandbox Code Playgroud)
如何在 Julia 中设置 n+1 的增量?没有运气在其他地方找到答案。
如果我能澄清任何事情,请告诉我。我对这门语言还是很陌生。
如果我有一个带有随机值的数组A,我想为每个长度为A的i定义一个数组B. B[i] = (A[i])²
首先,我尝试了以下代码:
using Distributions
A = rand(Uniform(1,10),1,20)
B = A
for i in 1:20
B[i] = (A[i])^2
end
Run Code Online (Sandbox Code Playgroud)
在这些操作之后,我有A = B.
A
1×20 Array{Float64,2}:
26.0478 5.36654 99.675 23.18 … 1.54846 91.3444 9.41496 2.91666
B
1×20 Array{Float64,2}:
26.0478 5.36654 99.675 23.18 … 1.54846 91.3444 9.41496 2.91666
Run Code Online (Sandbox Code Playgroud)
所以我尝试了另一种方法:
B = A^2
Run Code Online (Sandbox Code Playgroud)
有以下错误:
ERROR: DimensionMismatch("A has dimensions (1,20) but B has dimensions (1,20)")
Run Code Online (Sandbox Code Playgroud)
例如,如果我这样做,B = 2*A它可以正常工作......
一些想法有所帮助?
谢谢
当我比较 的输出时,结果@printf("%.50f", pi)与BigFloat(pi)第 16 位不同。这可能是由于类型反转造成的。但我喜欢更深入地了解这里发生了什么?
朱莉娅> @printf("%.50f", pi)
3.14159265358979311599796346854418516159057617187500
Run Code Online (Sandbox Code Playgroud)
朱莉娅> BigFloat(pi)
3.1415926535897932384626433832795028841971693993751058209749445923078164062861
Run Code Online (Sandbox Code Playgroud) 朱莉娅如何计算大数字?
例如,这可以按预期工作:
julia> 10^18
1000000000000000000
Run Code Online (Sandbox Code Playgroud)
但是对于更大的数字,整数存在问题:
julia> 10^19
-8446744073709551616
julia> 10^20
7766279631452241920
Run Code Online (Sandbox Code Playgroud)
但是如果使用十进制数则它可以工作:
julia> 10.0^20
1.0e20
Run Code Online (Sandbox Code Playgroud)
你知道为什么吗?