gpt4 book ai didi

arrays - bash 中的数组运算

转载 作者:行者123 更新时间:2023-11-29 09:27:34 25 4
gpt4 key购买 nike

我在 bash 中有多个数组,例如 arrKey[]aarT[]P[],我想做对这些数组进行算术运算。正如我所检查的,数组工作正常,但是查找数组 P[] 的算法是错误的。有人可以帮我吗?

    #The format is C[0] = (A[0,0]*B[0]) + (A[0,1]*B[1]) 

这是我到目前为止尝试过的代码。

    P[0]= $(({arrKey[0,0]} * {arrT[0]} ))+ $(({arrKey[0,1]} * {arrT[1]})) ))
echo ${P[0]}

最佳答案

您的代码行有几个问题:

P[0]= $(({arrKey[0,0]} * {arrT[0]} ))+ $(({arrKey[0,1]} * {arrT[1]})) ))
  • =后面多了一个空格,删掉。

    P[0]=$(({arrKey[0,0]} * {arrT[0]} ))+ $(({arrKey[0,1]} * {arrT[1]})) ))
  • 在算术展开式之外添加两个元素是不正确的。
    删除额外的括号:

    P[0]=$(({arrKey[0,0]} * {arrT[0]} + {arrKey[0,1]} * {arrT[1]}))
  • 使用 $ 或从 $(( … )) 中的变量中删除 {…}:

    P[0]=$(( arrKey[0,0] * arrT[0] + arrKey[0,1] * arrT[1] ))
  • 即使没有严格要求,引用您的扩展也是一个好主意:

    P[0]="$(( arrKey[0,0] * arrT[0] + arrKey[0,1] * arrT[1] ))"

此外,确保 arrKey 已声明为关联数组:

declare -A arrKey

确保预期的双索引 0,0 有效。

关于arrays - bash 中的数组运算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39065319/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com