自定義函數的返回值問題 [文華財經]
-
咨詢內容:
老師你好,請問自定義函數中的返回值可以返回數組嘛,為什么我這里返回數組Index會報錯說return語句有問題,我的代碼如下
Params? ?NumericArrayRef Arr;
Vars? ?Numeric nSize;
? ?Numeric i;
? ?Numeric j;
? ?Numeric Tmp;
? ?Numeric nSize1;? ?Numeric nSize2;? ?NumericArray index;Begin? ?nSize = GetNumericArraySize(Arr);//獲取數組大小? ?nSize2 = nSize - 2;? ?nSize1 = nSize - 1;? ?for i = 0 to nSize1{? ?index[i] = i;}
? ?for i = 0 to nSize2//for循環語句? ?{ ? for j = i +1 to nSize1//for循環語句 ? { If (Arr[i] < Arr[j]) { Tmp = Arr[i]; Arr[i] = Arr[j]; Arr[j] = Tmp; Tmp = index[i]; index[i] = index[j]; index[j] = Tmp; } ? }? ?}
Return index;End?
?來源:程序化99
-
文華技術人員:
您方法不對,您要排序,最后不用輸出數組的,您調用改自定義函數后就自動排序數組參數了,不需要額外輸出:
Params ? ?NumericArrayRef Arr; Vars ? ?Numeric nSize; ? ?Numeric i; ? ?Numeric j; ? ?Numeric Tmp; ? ?Numeric nSize1; ? ?Numeric nSize2; Begin ? ?nSize = GetNumericArraySize(Arr);//獲取數組大小 ? ?nSize2 = nSize - 2; ? ?nSize1 = nSize - 1;
? ?for i = 0 to nSize2//for循環語句 ? ?{ ? for j = i +1 to nSize1//for循環語句 ? { If (Arr[i] < Arr[j]) { Tmp = Arr[i]; Arr[i] = Arr[j]; Arr[j] = Tmp; } ? } ? ?} End??
?來源: www.tumamayizhan.com
-
文華客服:
?我想得到排序后的數在原來數組的哪個位置,我后面需要調用
?
-
網友回復:
?您一樓冒泡排序法寫的有錯誤,您直接用NumericArraySort 排序就行了,
然后排序后? ARR[0] 就是最大的或者最小的,然后依次排序。?
有思路,想編寫各種指標公式,交易模型,選股公式,還原公式的朋友
可聯系技術人員 QQ: 262069696 或微信號:cxh99cxh99 進行 有償收費 編寫!
(注:由于人數限制,QQ或微信請選擇方便的一個聯系我們就行,加好友時請簡單備注下您的需求,否則無法通過。謝謝您!)
相關文章
-
沒有相關內容