import java.io.*; import java.lang.*; import java.util.*; //------------------------klasa Regula---------------------------------// import java.io.*; import java.lang.*; import java.util.*; class Regula{ Object precondition[]; Object precondition1[]; Object decision; Object asert; int CtrlN; int CtrlL; //konstruktory public Regula(int CtrlN,int CtrlL,Object precondition,Object precondition1,Object asert,Object decision) { if(precondition==null) { this.precondition=null; } else { this.precondition=new Object[1]; this.precondition[0]=precondition; } if(precondition1==null) { this.precondition1=null; } else { this.precondition1=new Object[1]; this.precondition1[0]=precondition1; } this.decision=decision; this.asert=asert; this.CtrlN=CtrlN; this.CtrlL=CtrlL; } public Regula(int CtrlN,int CtrlL,Object precondition[],Object precondition1[],Object asert,Object decision) { if(precondition==null) { this.precondition=null; } else { this.precondition=new Object[precondition.length]; System.arraycopy(precondition,0,this.precondition,0,precondition.length); } if(precondition1==null) { this.precondition1=null; } else { this.precondition1=new Object[precondition1.length]; System.arraycopy(precondition1,0,this.precondition1,0,precondition1.length); } this.decision=decision; this.asert=asert; this.CtrlN=CtrlN; this.CtrlL=CtrlL; } public Regula(int CtrlN,int CtrlL,Object precondition[],Object precondition1,Object asert,Object decision) { if(precondition==null) { this.precondition=null; } else { this.precondition=new Object[precondition.length]; System.arraycopy(precondition,0,this.precondition,0,precondition.length); } this.precondition1=new Object[1]; this.precondition1[0]=precondition1; this.decision=decision; this.asert=asert; this.CtrlN=CtrlN; this.CtrlL=CtrlL; } public Regula(int CtrlN,int CtrlL,Object precondition,Object precondition1[],Object asert,Object decision) { if(precondition1==null) { this.precondition1=null; } else { this.precondition1=new Object[precondition1.length]; System.arraycopy(precondition1,0,this.precondition1,0,precondition1.length); } if(precondition==null) { this.precondition=null; } else { this.precondition=new Object[1]; this.precondition[0]=precondition; } this.decision=decision; this.asert=asert; this.CtrlN=CtrlN; this.CtrlL=CtrlL; } // metody public Object Sprawdz(Object object){ for(int i=0;i list= new ArrayList(); // deklaracja atrybutow String dniprac[]={"monday","tuesday","wednesday","thurstday","friday"}; String dniwolne[]={"saturday","sunday"}; String out[]={"june","july","august","september"}; String in_the_middle[]={"december","january","february"}; String before[]={"october","november"}; String after[]={"march","april","may"}; Integer before12[]={8,9,10,11,12}; Integer between_12_16[]={12,13,14,15}; Integer after16[]={16,17,18,19,20}; Integer ANY[]={8,9,10,11,12,13,14,15,16,17,18,19,20}; Integer All[]={8,9,10,11,12,13,14,15,16,17,18,19,20}; String grup_All_season[]={"out","before","in_the_middle","after"}; String para_near_season[]={"before","after"}; String morning[]={"morning_weekend","morning_workd"}; String midday[]={"midday_weekend","midday_workd"}; String evening[]={"evening_workd","evening_weekend"}; String allday[]={"All_weekend","All_workd"}; // deklaracja regul list.add(new Regula(2,1,dniprac,null,"workday",null)); //regula1 list.add(new Regula(7,0,dniwolne,null,"weekend",null)); //regula2 list.add(new Regula(12,3,"workday" ,before12,"morning_workd",null));//regula3 list.add(new Regula(12,4,"workday",between_12_16,"midday_workd",null));//regula4 list.add(new Regula(12,5,"workday",after16,"evening_workd",null)); //regula5 list.add(new Regula(12,6,"workday",All,"All_workd",null)); //regula6 list.add(new Regula(12,7,"workday",ANY,"single",null)); //regula7 list.add(new Regula(12,8,"weekend",before12,"morning_weekend",null));//regula8 list.add(new Regula(12,9,"weekend",between_12_16,"midday_weekend",null));//regula9 list.add(new Regula(12,10,"weekend",after16,"evening_weekend",null));//regula10 list.add(new Regula(12,11,"weekend",All,"All_weekend",null)); //regula11 list.add(new Regula(12,2,"weekend",ANY,"single",null)); //regula12 list.add(new Regula(16,13,out,null,"out",null)); //regula13 list.add(new Regula(16,14,before,null,"before",null)); //regula14 list.add(new Regula(16,15,in_the_middle,null,"in the middle",null)); //regula15 list.add(new Regula(16,12,after,null,"after",null)); //regula16 list.add(new Regula(0,17,grup_All_season,"single",null,5)); //regula17 list.add(new Regula(0,18,para_near_season,morning,null,20)); //regula18 list.add(new Regula(0,19,para_near_season,midday,null,25)); //regula19 list.add(new Regula(0,20,para_near_season,evening,null,15)); //regula20 list.add(new Regula(0,21,para_near_season,allday,null,35)); //regula21 list.add(new Regula(0,22,"in_the_middle","morning_workd",null,28)); //regula22 list.add(new Regula(0,23,"in_the_middle","midday_workd",null,35)); //regula23 list.add(new Regula(0,24,"in_the_middle","evening_workd",null,28)); //regula24 list.add(new Regula(0,25,"in_the_middle","All_workd",null,60)); //regula25 list.add(new Regula(0,26,"in_the_middle","morning_weekend",null,35));//regula26 list.add(new Regula(0,27,"in_the_middle","midday_weekend",null,40)); //regula27 list.add(new Regula(0,28,"in_the_middle","evening_weekend",null,30));//regula28 list.add(new Regula(0,0,"in_the_middle","All_weekend",null,80)); //regula29 // przykladowe uzycie metody System.out.println(list.get(0).Sprawdz("tuesday")); System.out.println(list.get(17).Sprawdz("in_the_middle","evening_workd")); } }