import javax.swing.*;

class MassimoArrayDiDouble2 {
  public static void main(String[] args) {
    String stringaInput;
    double[] movimenti = new double[10];
    boolean inserimentoCorretto;

    for(int i=0; i<movimenti.length; i++) {
      stringaInput = JOptionPane.showInputDialog(
        "Inserisci l'elemento in posizione " + i);
      inserimentoCorretto=false;
      try {
        movimenti[i] = Double.parseDouble(stringaInput);
        inserimentoCorretto=true;
      }
      catch(NumberFormatException e1) {
        while(inserimentoCorretto==false) {
          stringaInput = JOptionPane.showInputDialog(
            "ATTENZIONE, hai immesso una stringa!\n" +
            "Inserisci invece l'elemento in posizione " + i);
          try {
            movimenti[i] = Double.parseDouble(stringaInput);
            inserimentoCorretto=true;
          }
          catch(NumberFormatException e2) {
            inserimentoCorretto=false;
          }
          catch(NullPointerException e2) {
            JOptionPane.showMessageDialog(null, "Arrivederci a presto!");
            System.exit(0);
          }
        }
      }
      catch(NullPointerException e1) {
        JOptionPane.showMessageDialog(null, "Arrivederci a presto!");
        System.exit(0);
      }
    }

    double minimo, massimo;
    int posizioneMassimo, posizioneMinimo;

    minimo = movimenti[0];
    posizioneMinimo = 0;
    massimo = movimenti[0];
    posizioneMassimo = 0;

    for(int i=1; i<movimenti.length; i++) {
      if(movimenti[i] > massimo) {
        massimo = movimenti[i];
        posizioneMassimo = i;
      }
      if(movimenti[i] < minimo) {
        minimo = movimenti[i];
        posizioneMinimo = i;
      }
    }

    JOptionPane.showMessageDialog(null, "Il massimo  " + massimo + 
      " in posizione " + posizioneMassimo + "\n" +
      "mentre il minimo  " + minimo + " in posizione " + posizioneMinimo);

    System.exit(0);

  }
}