我有一些僞代碼,我把它們編成了java代碼。這是前綴平均值的計算:在數組中生成隨機數
Algorithm 4.1. PrefixAverages1(X)
Input: X, a 1-D numerical array of size n
1) Let A = an empty 1-D numerical array of size n
2) For i = 0 to n-1
3) Let s = X[0]
4) For j = 1 to i
5) Let s = s + X[j]
6) End For
7) Let A[i] = s /(i+1)
8) End For
Output: An n-element array A of numbers such that A[i]
is the average of elements X[0],X[1], … ,X[i]
這裏是我寫的Java代碼:
public class Prefix1 {
public static void main(String[] args) {
algo1();
}
private static void algo1(){
int X[] = new int[10];
int randomNumber;
int o = 1;
for (int i=0; i<o; i++) {
randomNumber = (int) (Math.random() * 100) + 1 ;
X[i] = randomNumber;
}
int n = X.length;
int A[] = new int [n];
for (int i=0; i<n-1; ++i)
{
int s = X[0];
for (int j=1; j<i; ++j)
{
s = s + X[j];
}
A[i] = s/(i+1);
}
}
我的問題是,我不確定如何產生隨機數到這個然後通過algortihm運行這個數組。我敢肯定,我的java代碼是正確的,基於僞代碼,任何幫助將不勝感激,謝謝:)
總是定義「不工作」。 – keyser
您是否知道首先for循環僅運行一次? –
初學者,因爲你的o = 1,你沒有填充整個數組,但你只放一個元素 – user902383