-2
public class trothBrthdays {

    public static void main ( String args [] ) {
        Random day = new Random();
        int days[] = new int[366];
        int smallest = 0;
        int largest = 885000;

        for (int i = 1; i <= 885000; i++)
        {
            int persons = day.nextInt(365) + 1;
            days[persons] += 1;
        }
        for (int a = 1; a <= 365; a++)
        {
            System.out.printf ( " \nDay %d: %d ", a, days[a]);
        }

ここで、プログラムは誕生日が最も多い日を見つけます

        for (int b = 0; b < days.length;)
        {
            if(days[b] > smallest)
            {
                largest = days[b];
                System.out.printf ( "\nLargest: %d ", days[b]);
            }
        }

ここで、プログラムは誕生日が最も少ない日を見つけます

        for (int c = 0; c > days.length;)
        {
            if (days[c] < largest)
            {
                smallest = days[c];
                System.out.printf ( "\nSmallest: %d ", days[c]);
            }
        }
    }
}

問題は、プログラムが最大数を見つけると、最大数を無限にループし、その理由がわからないことです。私はまだ初心者プログラムであり、このプログラムのフォーマットとタイプについて建設的な批判を歓迎します.

4

1 に答える 1