import java.util.Scanner;
 
public class Examen01
{
  
  
   public static void main(String args[])
   {
     Scanner teclado = new Scanner(System.in);
     int opcion;
     double valormin;
     double valormax;
     double incremento;
     int contador=0;
     
     System.out.println("Tabla de operadores");

     System.out.print("Operador [1=+ 2=- 3=* 4=/ 5=% 0=Salir]: ");
     opcion= teclado.nextInt();
     
     while (opcion!=0)
     {
     System.out.print("Valor minimo: ");
     valormin= teclado.nextDouble();
     System.out.print("Valor maximo: ");
     valormax= teclado.nextDouble();
     
     do
     {
     System.out.print("Valor incremento: ");
     incremento= teclado.nextDouble();
     }
     while (incremento<=0);
     
     switch (opcion)
     {
       case 1:
       {
         System.out.print("  +   |");
         for ( double k=valormin; k<=valormax; k = k + incremento)
           System.out.printf(" %5.1f ",k);
         System.out.println();
         
         for (double l= valormin; l<=valormax; l =l+incremento)
           System.out.print("--------");
           System.out.println(); 
           
         for ( double i=valormin; i<=valormax; i= i + incremento)
         {
           if (i<=valormax)
             System.out.printf("%5.1f |", i);
           
           for (double j=valormin; j<=valormax; j= j + incremento)
           {
            System.out.printf(" %5.1f ",(i+j));
           }
           System.out.println(); 
         }
       }
       break;
       
       case 2:
       {
         System.out.print("  -   |");
         for ( double k=valormin; k<=valormax; k = k + incremento)
           System.out.printf(" %5.1f ",k);
          System.out.println();
         
           for (double l= valormin; l<=valormax; l =l+incremento)
           System.out.print("--------");
           System.out.println();
         
         for ( double i=valormin; i<=valormax; i= i + incremento)
         {
           if (i<=valormax)
             System.out.printf("%5.1f |", i);
           
           for (double j=valormin; j<=valormax; j= j + incremento)
           {
            System.out.printf(" %5.1f ",(i-j));
           }
           System.out.println(); 
         } 
       }
       break;
       
       case 3:
       {
         System.out.print("  *   |");
         for ( double k=valormin; k<=valormax; k = k + incremento)
           System.out.printf(" %5.1f ",k);
          System.out.println();
          
           for (double l= valormin; l<=valormax; l =l+incremento)
           System.out.print("--------");
           System.out.println();
         
          for ( double i=valormin; i<=valormax; i= i + incremento)
         {
           if (i<=valormax)
             System.out.printf("%5.1f |", i);
           
           for (double j=valormin; j<=valormax; j= j + incremento)
           {
            System.out.printf(" %5.1f ",(i*j));
           }
           System.out.println(); 
         }
       }
       break;
       
       case 4:
       {
         System.out.print("  /   |");
         for ( double k=valormin; k<=valormax; k = k + incremento)
           System.out.printf(" %5.1f ",k);
          System.out.println();
         
           for (double l= valormin; l<=valormax; l =l+incremento)
           System.out.print("--------");
           System.out.println();
          
          for ( double i=valormin; i<=valormax; i= i + incremento)
         {
           if (i<=valormax)
             System.out.printf("%5.1f |", i);
           
           for (double j=valormin; j<=valormax; j= j + incremento)
           {
            System.out.printf(" %5.1f ",(i/j));
           }
           System.out.println(); 
         }
       }
       break;
       
       case 5:
       {
         System.out.print("  %   |");
         for ( double k=valormin; k<=valormax; k = k + incremento)
           System.out.printf(" %5.1f ",k);
          System.out.println();
          
           for (double l= valormin; l<=valormax; l =l+incremento)
           System.out.print("--------");
           System.out.println();
         
         for ( double i=valormin; i<=valormax; i= i + incremento)
         {
           if (i<=valormax)
             System.out.printf("%5.1f |", i);
           
           for (double j=valormin; j<=valormax; j= j + incremento)
           {
            System.out.printf(" %5.1f ",(i%j));
           }
           System.out.println(); 
         }
       }
       break;
     
     }
     contador=contador+1;
  
  System.out.print("\n\nOperador [1=+ 2=- 3=* 4=/ 5=% 0=Salir]: ");
  opcion = teclado.nextInt();

 }
}
   
}