
| Current Path : /var/www/web-klick.de/dsh/90_akt/uni/java/ |
Linux ift1.ift-informatik.de 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64 |
| Current File : /var/www/web-klick.de/dsh/90_akt/uni/java/test_lq.java1 |
import java.util.*;
import iftinf.utility.*;
import iftinf.Logic.*;
class test_lq {
//************************************************
public static void main (String args[])
throws Exception {
String[] par = {"","",""};
if (args.length > 0) { par[0] = args[0]; }
if (args.length > 1) { par[1] = args[1]; }
if (args.length > 2) { par[2] = args[2]; }
if (par[0].equals("test1")) { test1(par); }
if (par[0].equals("test2")) { par[1] = "3"; par[2] = "print"; test1(par); }
if (par[0].equals("logicparser")) { logicparser(par); }
}
//************************************************
public static void test_ok (String[] par, long tt) {
float tt1 = (float)(System.currentTimeMillis() - tt)/1000;
System.out.println("Test " + par[0] + " ok. Parameters: "
+ par[1] + ", " + par[2]
+ ". " + tt1 + " sec.");
}
//************************************************
public static void test_failed (String[] par, long tt) {
float tt1 = (float)(System.currentTimeMillis() - tt) / 1000;
System.out.println("Test " + par[0] + " failed. Parameters: "
+ par[1] + ", " + par[2]
+ ". " + tt1 + " sec.");
}
//************************************************
public static void test1 (String[] par)
throws Exception {
long tt = System.currentTimeMillis();
//try {
LogicOperator op = new LogicOperator();
Integer i = new Integer(par[1]);
String[] ar1 = {"0","1","2","3","4","5","6","7","8","9"};
String[] ar2 = {"0","1","2","3","4","5","6","7","8","9"};
String[] ar3 = {"0","1","2","3","4","5","6","7","8","9"};
String[] ar4 = {"0","1","2","3","4","5","6","7","8","9"};
String[] ar5 = {"0","1","2","3","4","5","6","7","8","9"};
String[] ar6 = {"0","1","2","3","4","5","6","7","8","9"};
String[] ar7 = {"0","1","2","3","4","5","6","7","8","9"};
String[] ar11 = {"1"};
String[] ar12 = {"1"};
String[] ar13 = {"1"};
String[] ar14 = {"1"};
String[] ar15 = {"1"};
ArrayIterator AIx, AIy, AJx, AJy, AKx, AKy, AXx;
if (i.intValue() > 0) { AIx = new ArrayIterator(ar11); } else {
AIx = new ArrayIterator(ar1); }
if (i.intValue() > 1) { AIy = new ArrayIterator(ar12); } else {
AIy = new ArrayIterator(ar2); }
if (i.intValue() > 2) { AJx = new ArrayIterator(ar13); } else {
AJx = new ArrayIterator(ar3); }
if (i.intValue() > 3) { AJy = new ArrayIterator(ar14); } else {
AJy = new ArrayIterator(ar4); }
if (i.intValue() > 4) { AKx = new ArrayIterator(ar15); } else {
AKx = new ArrayIterator(ar5); }
AKy = new ArrayIterator(ar6);
AXx = new ArrayIterator(ar7);
ArrayList MI = new ArrayList(10);
MI.add(AIx);
MI.add(AIy);
MI.add(AJx);
MI.add(AJy);
MI.add(AKx);
MI.add(AKy);
MI.add(AXx);
LogicExpr LE[] = {new LogicExpr("VAR","x"),
new LogicExpr("VAR","y"),
new LogicExpr("VAR","z"),
new LogicExpr("VAR","a"),
new LogicExpr("VAR","b"),
new LogicExpr("VAR","c"),
new LogicExpr("VAR","w")};
LogicExpr le1 = new LogicExpr("cur",new LogicExpr("St",MI,LE),
new LogicExpr("TRUE"));
// LogicExpr le2 = new LogicExpr("St ? (x,y,z,a,b,c,w) cur TRUE",MI);
Cursor lq = new Cursor(le1,op);
Object[] g;
if (par[2].equals("print")) {
while (true) {
if (!lq.cursor.hasNext()) { break; }
g = lq.cursor.model();
System.out.println(g[0]+"--"+g[1]+"--"+g[2]+"--"+
g[3]+"--"+g[4]+"--"+g[5]+"--"+g[6]);
}
} else {
while (true) {
if (!lq.cursor.hasNext()) { break; }
g = lq.cursor.model();
}
}
test_ok(par,tt);
// } catch (Exception e) { test_failed(par,tt); }
}
//************************************************
public static void logicparser (String[] par)
throws Exception {
Object obj[] = {"1","2","3"};
String test = "GG(a * ('b + c')) ==> x = c";
LogicExpr le = new LogicExpr(par[1],obj);
long tt = System.currentTimeMillis();
le = new LogicExpr(par[1],obj);
System.out.println("FML: " + par[1] + "\nUNPARSE: " + le.unparse() );
test_ok(par,tt);
}
}