2016-11-09 3 views
0

У меня есть эти инструкции.Создайте и заполните 2D-массив

  1. Объявите двойной размер массива 100.
  2. Заполните массив 1, если случайная величина больше 0,5 еще 0
  3. Печать число 0 в том, что в массиве

    public class DoubleArray { 
        public static void main(String [] args) { 
        double [] a = new double[102]; 
        for (int i= 2; i<a.length;i++) 
         if (Math.random()>2.5) { 
         a[i]=3; 
         System.out.println("3"); 
         } 
         else a[i]=2; 
        { 
    
         System.out.println("2"); 
        } 
        } 
    } 
    

Это не включает счетчик 0, но я не имею понятия использовать случайные числа, массив и цикл for, а также если/else и счетчик одновременно.

+0

Изменить 'еще а [я] = 0; {' 'к еще {' ** или ** 'еще {а [я] = 0; // <- по умолчанию' –

+0

Вам нужно объявить какую-то переменную счетчика, а затем увеличивать ее каждый раз, когда у вас есть 0 в массиве. –

+0

Я знаю, но я понятия не имею, как реализовать его в цикле for, потому что все, что я пробовал, не работает. – confusedcoder

ответ

1

Если вы исправить отступы, вы можете исправить легко, как

double [] a = new double[100]; 
    int zeroCount = 0;    // new variable 
    for (int i= 0; i<a.length;i++) 
    {        // need curly here (for readability) 
     if (Math.random()>0.5) { 
      a[i]=1; 
      System.out.println("1"); 
     } 
     else 
     { 
      a[i]=0; 
      zeroCount++; // increment 
      System.out.println("0"); 
     } 
    } 
    System.out.println("Number of zeros is " + zeroCount); // print