/***************************************************************/
/* Prof. Dr. Carsten Vogt                                      */
/* FH Koeln, Fak. 07 / Nachrichtentechnik                      */
/* http://www.nt.fh-koeln.de/vogt                              */
/*                                                             */
/* Das Programm kehrt mit Hilfe einer rekursiven Methode den   */
/* Inhalt eines Zahlenfelds um.                                */
/***************************************************************/

import java.io.*;

public class Umkehren {

 // rekursive Methode zum Umkehren des Inhalts eines Ganzzahlfelds feld,
 // beschraenkt auf den Indexbereich von,...,bis

 public static void feldUmkehren(int[] feld, int von, int bis) {

  if (bis<=von) // dann ist nichts zu tun
   return;

  // erste und letzte Zahl vertauschen

  int hilf = feld[von]; feld[von] = feld[bis]; feld[bis] = hilf; 

  // restlichen Feldinhalt (ohne erste und letzte Zahl)
  // durch rekursiven Aufruf umkehren

  feldUmkehren(feld,von+1,bis-1); 

 }

 public static void main(String args[]) throws IOException {

  BufferedReader in = new BufferedReader(new InputStreamReader(System.in));

  int[] f; // Zahlenfeld, dessen Inhalt umgekehrt werden soll

  int laenge;

  System.out.println();
  System.out.println("Bitte Feldlaenge eingeben: ");
  laenge = Integer.parseInt(in.readLine());
  
  f = new int[laenge];

  System.out.println();
  System.out.println("Bitte Feldeintraege eingeben:");
  for (int i=0; i<f.length; i++) {
   System.out.print("f["+i+"]: ");
   f[i] = Integer.parseInt(in.readLine());
  };  

  // Aufruf der Methode zum Umkehren 

  feldUmkehren(f,0,f.length-1);

  // Ausgabe des Resultats

  System.out.println();
  System.out.print("Umgekehrter Inhalt:");
  for (int i=0;i<f.length;i++)
   System.out.print(" " + f[i]);
  System.out.println();

 }

}

