-1

乱数ジェネレーターで連続番号がいくつ表示されるかを確認する必要があります。連続番号の部分を除いて、プログラムは機能しています。これがiveが得たものです。私はたくさんのことを試しましたが、どういうわけか私はそれを理解することができません、助けてください!1000個の数字と500個の乱数が出てきて、最小値と最大値、そして平均値を見つけました。ここで、連続する番号がいくつ出てくるかを調べる必要がありますfe 9、10、11または55、56、57...このエラーも発生します...--スレッド"main"java.util.NoSuchElementExceptionの例外

    int num, largest, smallest, sum = 0, count = 0;
    int programnumber = 6;
    header (prw, programnumber);
    double average = 0;

    Random gen = new Random();
    FileWriter fw = new FileWriter("randomdata.txt");
    for (int i1 = 0; i1 < 500; i1++){
        num = gen.nextInt(1000);
        fw.write(num + "\n");
        count++;

    }
    fw.close();

    File numfile = new File("randomdata.txt");
    Scanner infile = new Scanner(numfile);
    largest = infile.nextInt();
    smallest = infile.nextInt();
    largest = 0;
    smallest = 999;
    while (infile.hasNext()){
        num = infile.nextInt();
        System.out.println(num);
        if (num > largest){
            largest = num;
        }
        if (num < smallest){
            smallest = num;
        }
        sum = sum + num;
        count++;
        }
    average = (double) sum / count;
    System.out.println("The largest is: " + largest);
    prw.println("The largest is: " + largest);
    System.out.println("The smallest is: " + smallest);
    prw.println("The smallest is: " + smallest);
    System.out.println("The average is: " + average);
    prw.println("The average is: " + average);

            // here is the part where I am stuck
    int prev, consec=0;
    prev= infile.nextInt();
    num= infile.nextInt();
    while (num >= 0) { 
        if (num >= prev){  
            consec++; 
            prev = num; 
            num = infile.nextInt();
        }

    }
    System.out.println(consec);








    prw.close();
}
4

1 に答える 1