就像下面的简化函数一样,如果b<c
,那么我如何获得结果“否”?
function o(b,c)
if b>=c
return b,c,b+c
else
return "No"
end
end
b = 3
c = 4
k,h,l = o(b,c)
答案 0 :(得分:2)
真正的问题是您要返回两个完全不同的东西。在一种情况下,将3个不同的变量分配给整数,在另一种情况下,将1个字符串分配给字符串。
该功能实际上在这里工作。您得到的特定错误是因为您试图将3个变量分配给一个字符串。当您将多个变量分配给一个字符串时,julia实际上将字符串拆分为字符并为每个变量分配了一个字符,但是您的字符串只有2个字符长,并且您要分配3个变量。
您应该尝试让函数返回相同类型的对象,或者至少返回相同数量的变量。如果您坚持要让该功能以类似于当前形式的方式工作,那么您可以执行类似的操作
function o(b,c)
if b>=c
return [b,c,b+c]
else
return "No"
end
end
b = 5
c = 4
result = o(b,c)