/**
  *
  * Beschreibung
  *
  * @version 2.0a vom 08.03.2012
  * @author Michael Ziemke, Köln
  */

public class ConStackCalc {
  // Attribute:
  private static StackCalc myCalc = new StackCalc();
  private static String z1, z2;
  // Methoden:
  public static void main(String[] args) {
    info();
    test_zahl1();
    test_add();
    test_mul();
  } // end of main

  private static void info() {
    System.out.println("Projekt StackCalc rechnet mit sehr langen ganzen Zahlen");
  }
  private static void test_zahl1() {
    System.out.println();
    System.out.println("Tests zum Lesen und Schreiben von Zahlen:");
    System.out.println(" zahl1 mit Wert 123456789 wird eingelesen, dann geschrieben:");
    myCalc.read("123456789", 1);
    System.out.println(" Zahl1 = "+myCalc.write(1));
    System.out.println(" zahl1 ist nach dem Schreiben leer! Kontrolle durch erneutes Schreiben:");
    System.out.println(" Zahl1 = "+myCalc.write(1));
  }
  private static void test_add() {
    System.out.println();
    System.out.println("Tests zur Addition:");
    z1="1234"; z2="567";
    System.out.println(z1 + " + " + z2 + " = " + myCalc.calc(z1, z2, '+'));
    z1="567"; z2="1234";
    System.out.println(z1 + " + " + z2 + " = " + myCalc.calc(z1, z2, '+'));
    z1="987"; z2="987";
    System.out.println(z1 + " + " + z2 + " = " + myCalc.calc(z1, z2, '+'));
  }
  private static void test_mul() {
    System.out.println();
    System.out.println("Tests zur Multiplikation:");
    z1="1234"; z2="567";
    System.out.println(z1 + " * " + z2 + " = " + myCalc.calc(z1, z2, '*'));
    z1="567"; z2="1234";
    System.out.println(z1 + " * " + z2 + " = " + myCalc.calc(z1, z2, '*'));
    z1="987"; z2="654321";
    System.out.println(z1 + " * " + z2 + " = " + myCalc.calc(z1, z2, '*'));
    z1="654321"; z2="987";
    System.out.println(z1 + " * " + z2 + " = " + myCalc.calc(z1, z2, '*'));
    z1="987"; z2="987";
    System.out.println(z1 + " * " + z2 + " = " + myCalc.calc(z1, z2, '*'));
    z1="987654321987654321"; z2="123456789123456789";
    System.out.println(z1 + " * " + z2 + " = " + myCalc.calc(z1, z2, '*'));
    z1="123456789123456789"; z2="987654321987654321";
    System.out.println(z1 + " * " + z2 + " = " + myCalc.calc(z1, z2, '*'));
    System.out.println("     korrektes Ergebnis mit TI-Nspire-CAS: 121932631356500531347203169112635269");
  }
} // end of class ConStackCalc
