Что не так с моим кодом? Я использую BlueJ. В основном то, что я пытаюсь сделать, это выбрать, сколько сторон у кубика, ввести количество каждой из сторон, бросить кубик определенное количество раз и показать, сколько раз бросалось число.
Пример: шесть сторон, числа: 1, 2, 3, 4, 5, 6. Я бросаю кости 20 раз. И я вижу, сколько раз переворачивалась сторона.
Ошибка: java.lang.ArrayIndexOutOfBoundsException
import javax.swing.*;
class Dice
{
public static void main (String [] args)
{
int c = Integer.parseInt(JOptionPane.showInputDialog("How many sides?"));
String[ ] number = new String[c];
int[ ] sides = new int[c];
int d = Integer.parseInt(JOptionPane.showInputDialog("How many times do you want to roll your dice?"));
int[ ] output = new int[c];
for(int i=0;i<c;i++)
{
number[i] = JOptionPane.showInputDialog("Enter side number:");
}
for(int i=0;i<d;i++)
{
int r;
r = (int) Math.floor(Math.random() * c) + 1;
if(r == sides[i])
{
sides[i] = sides[i] + 1;
}
}
for(int i=0;i<c;i++)
{
System.out.println(number[i] + " was rolled " + output[i] + " times.");
}
}
}