亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? main.java

?? 實現2型文法的化簡包括:無符號和無用產生式的刪除、ε-產生式的消除、單產生式的消除算法實現
?? JAVA
字號:
/* * To change this template, choose Tools | Templates * and open the template in the editor. */package languageclear;import java.awt.*;import java.awt.event.*;import javax.swing.*;import java.io.*;/** * * @author Dell */class MyWindow extends JFrame implements ActionListener{    JTextArea input;    JButton confirm,bParse1,bParse2;    JButton fileButton;    JTextField outVn1,outVt1,outP1,outS1;    JTextField outVn2,outVt2,outP2,outS2;    JPanel inPanel,outPanel1,outPanel2;    Box basebox;    Generation g;    JFileChooser fchooser;    String currentDirectory=null;    //////////////Men Strat\\\\\\\\\\\\\\\\\\\    JMenuBar menubar;    JMenu menuStart;    JMenuItem itemOpen,itemExit;    JMenu menuAlgos;    JMenuItem itemAlg2_1,itemAlg2_2,itemAlg2_3,itemAlg2_4,itemAlg2_5,itemAlg2_6;    JMenu menuHelp;    JMenuItem itemHelp;    //////////////Men  End\\\\\\\\\\\\\\\\\\\    MyWindow(){        this.setTitle("文法化簡小程序");        Font f=new Font("宋體",Font.BOLD,16);        Color c1=new Color(240,243,248),c2=new Color(78,145,248);                menubar=new JMenuBar();        menuStart=new JMenu("文件");        menuAlgos=new JMenu("算法");        menuHelp=new JMenu("幫助");        itemOpen=new JMenuItem("打開");           itemExit=new JMenuItem("退出");         itemHelp=new JMenuItem("關于");               itemAlg2_1=new JMenuItem("算法2.1");      itemAlg2_2=new JMenuItem("算法2.2");    itemAlg2_3=new JMenuItem("算法2.3");        itemAlg2_4=new JMenuItem("算法2.4");      itemAlg2_5=new JMenuItem("算法2.5");    itemAlg2_6=new JMenuItem("算法2.6");         menuStart.add(menuStart);                 menuStart.add(itemOpen);         menuStart.addSeparator();      menuStart.add(itemExit);        menuAlgos.add(itemAlg2_1);       menuAlgos.addSeparator();      menuAlgos.add(itemAlg2_2);       menuAlgos.addSeparator();   menuAlgos.add(itemAlg2_3);  menuAlgos.addSeparator();         menuAlgos.add(itemAlg2_4);       menuAlgos.addSeparator();      menuAlgos.add(itemAlg2_5);       menuAlgos.addSeparator();   menuAlgos.add(itemAlg2_6);        menuHelp.add(itemHelp);        menubar.add(menuStart);           menubar.add(menuAlgos);        menubar.add(menuHelp);        itemOpen.addActionListener(this);   itemExit.addActionListener(this);   itemHelp.addActionListener(this);          itemAlg2_1.addActionListener(this); /*itemAlg2_2.addActionListener(this);*/ itemAlg2_3.addActionListener(this);       /* itemAlg2_4.addActionListener(this); itemAlg2_5.addActionListener(this);*/ itemAlg2_6.addActionListener(this);        setJMenuBar(menubar);        fchooser=new JFileChooser(currentDirectory);        input=new JTextArea(8,70);        input.setText("請在此區域內輸入格式如下:\n" +                "開始符號:{S}(默認為S)\n"+"非終結符:{S,U,V,W}\n" +                "終結符:{a,b,c}\n" +                "產生式:{S->aS,S->W,S->U,U->a,V->bV,V->ac,W->aW}\n"+                "(空串用^表示)");        input.selectAll();        input.setBackground(c1);        input.setFont(f);        input.setForeground(c2);                confirm=new JButton("確定");        confirm.addActionListener(this);        fileButton=new JButton("打開");        fileButton.addActionListener(this);        inPanel=new JPanel();        inPanel.setBorder(BorderFactory.createTitledBorder("輸入區和輸出區"));        inPanel.add(new JScrollPane(input));        inPanel.add(confirm);        inPanel.add(fileButton);     /////////////////////////////////////////////////////            basebox=Box.createVerticalBox();        basebox.add(Box.createVerticalStrut(15));        basebox.add(inPanel);        basebox.add(Box.createVerticalStrut(15));     /////////////////////////////////////////////////////     /////////////////////////////////////////////////////        this.add(basebox,BorderLayout.CENTER);        validate();        this.setResizable(false);        this.setVisible(true);        this.setBounds(200,250,700,380);        this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);            }        public String print(Generation ge){        String output=new String();        output=output+"開始符號:{"+ge.Start;        output=output+"}\n非終結符號:{";        for(int i=0;i<ge.intVn;i++)            output=output+ge.Vn[i]+',';        output=output+"}\n終結符號:{";        for(int i=0;i<ge.intVt;i++)            output=output+ge.Vt[i]+',';        output=output+"}\n產生式集:{";        for(int i=0;i<ge.intPar;i++)            output=output+ge.Par[i].getX()+"->"+ge.Par[i].getY()+',';        output=output+'}';        return output;    }        public void actionPerformed(ActionEvent e){        if(e.getSource()==confirm)        {            char Start='1';            char []Vn;            char []Vt;            Production []Par;            char ch=',';            String []p=new String[25];            String Str=new String();            String in=new String();            in=input.getText();            if(in.isEmpty())                JOptionPane.showMessageDialog(this,"請按照格式輸入內容");            Str=in.substring(in.indexOf('{')+1,in.indexOf('}'));                        if(Str.length()==1)            {Start=Str.charAt(0);in=in.substring(in.indexOf('}')+1);}                        Str=in.substring(in.indexOf('{')+1,in.indexOf('}'));            in=in.substring(in.indexOf('}')+1);            Vn=InputG.charTokens(Str, ch).clone();                        Str=in.substring(in.indexOf('{')+1,in.indexOf('}'));            in=in.substring(in.indexOf('}')+1);            Vt=InputG.charTokens(Str, ch).clone();                        Str=in.substring(in.indexOf('{')+1,in.indexOf('}'));            in=in.substring(in.indexOf('}')+1);             for(int i=0;i<p.length;i++)            {                p[i]=new String();            }            p=InputG.stringTokens(Str, ch).clone();            Par=new Production[p.length];                       for(int i=0;i<p.length;i++)            {                Par[i]=new Production();                Par[i].x=p[i].charAt(0);                Par[i].y=p[i].substring(3);            }            g=new Generation(Vn.length,Vt.length,Par.length);            if(Start!='1')  g.setStart(Start);            g.addVn(Vn);            g.addVt(Vt);            g.addProduction(Par);            g.replaceEmp();        }        else if(e.getSource()==itemExit)        {            System.exit(0);        }        else if(e.getSource()==itemAlg2_1)        {                       g.algorithm2_1();            itemAlg2_2.addActionListener(this);            input.setText(" 算法2.1化簡后:\n"+print(g));                    }        else if(e.getSource()==itemAlg2_2)        {            g.algorithm2_2();            input.setText(" 算法2.2化簡后:\n"+print(g));        }         else if(e.getSource()==itemAlg2_3)        {             String w;            g.algorithm2_3();            w=new String(g.W);            input.setText(" 算法2.3化簡后:\n"+print(g)+"\nW:{"+w+"}\n");            itemAlg2_4.addActionListener(this);        }         else if(e.getSource()==itemAlg2_4)        {            g.algorithm2_4();            input.setText(" 算法2.4化簡后:\n"+print(g));           // itemAlg2_5.addActionListener(this);        }        else if(e.getSource()==itemAlg2_5)        {            g.algorithm2_5();            input.setText(" 算法2.5化簡后:\n"+print(g));        }        else if(e.getSource()==itemAlg2_6)        {            g.algorithm2_6();            input.setText(" 算法2.6化簡后:\n"+print(g));        }        else if(e.getSource()==fileButton||e.getSource()==itemOpen)        {            int n=fchooser.showOpenDialog(null);            if(n==JFileChooser.APPROVE_OPTION){                File file=fchooser.getSelectedFile();                try{                    input.setText("");                    RandomAccessFile in=new RandomAccessFile(file,"rw");                    String s=null;                    while((s=in.readLine())!=null)                    {                        byte b[]=s.getBytes("iso-8859-1");                        s=new String(b);                        input.append(s+"\n");                    }                    input.append("\n------------------------------------------\n" +                            "您的輸入是以上的內容嗎?如果是請按確定,\n如果不是請重新打開文件或者修改以上部分內容。");                }                catch(IOException ee){}            }        }        else if(e.getSource()==itemHelp)        {            JOptionPane.showMessageDialog(null, "本程序由劉飛制作,版權所有,翻版必究Θ2009 ");        }    }}public class Main {    /**     * @param args the command line arguments     */    public static void main(String[] args) {        // TODO code application logic here       MyWindow win=new MyWindow();       }}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品久久久网站| 欧美日韩精品欧美日韩精品一综合| 日韩一区二区影院| 国内外精品视频| 亚洲国产精品成人综合| av中文字幕在线不卡| 亚洲三级免费观看| 欧美性xxxxxx少妇| 日韩av电影天堂| 精品国产亚洲一区二区三区在线观看| 精品一区二区三区不卡| 美脚の诱脚舐め脚责91| 亚洲精品一线二线三线无人区| 丁香五精品蜜臀久久久久99网站| 国产精品久久久久久久久久免费看 | 久久久国产一区二区三区四区小说 | 精品少妇一区二区三区在线播放 | 国产精品网站在线观看| 日本高清不卡一区| 美洲天堂一区二卡三卡四卡视频| 国产亚洲一区字幕| 欧美在线看片a免费观看| 日韩二区三区四区| 国产女人18水真多18精品一级做 | 欧美视频在线观看一区| 精品影视av免费| 亚洲色图在线播放| 日韩一区二区三区视频在线观看 | 亚洲色图欧洲色图婷婷| 欧美精品久久久久久久多人混战| 国产伦精品一区二区三区免费| 亚洲免费在线播放| wwwwww.欧美系列| 欧美在线视频你懂得| 国内外成人在线| 亚洲国产精品久久久男人的天堂| 精品成a人在线观看| 91激情五月电影| 国产在线视频不卡二| 亚洲午夜久久久久久久久电影院 | 久久黄色级2电影| 亚洲靠逼com| 久久久不卡网国产精品一区| 欧美色综合天天久久综合精品| 国产精品99久| 日本人妖一区二区| 亚洲高清在线视频| 中文字幕一区二区三区四区| 欧美成人三级在线| 欧美精品一卡二卡| 在线观看一区二区视频| 成人在线视频首页| 韩国毛片一区二区三区| 午夜日韩在线观看| 亚洲愉拍自拍另类高清精品| 国产精品无人区| 国产亚洲短视频| 日韩亚洲欧美成人一区| 久久精品一区二区三区四区| 日韩欧美视频在线| 在线观看91av| 欧美日韩激情一区二区三区| 91黄色免费看| 91老司机福利 在线| 成人动漫中文字幕| 国产成人精品影院| 国产最新精品精品你懂的| 蜜桃久久av一区| 日韩在线卡一卡二| 天堂va蜜桃一区二区三区漫画版| 一区二区在线观看免费视频播放| 亚洲色图欧美激情| 亚洲精选一二三| 亚洲精品国产第一综合99久久 | 亚洲精品一线二线三线无人区| 日韩欧美一二区| 日韩免费在线观看| 日韩欧美资源站| 日韩午夜激情av| 2023国产精华国产精品| 国产精品乡下勾搭老头1| 久久久久9999亚洲精品| 91啪在线观看| 51精品久久久久久久蜜臀| 91在线观看高清| 一本色道久久综合精品竹菊 | 久久99国产精品麻豆| 美女在线观看视频一区二区| 日韩电影一区二区三区| 麻豆精品国产传媒mv男同| 美女尤物国产一区| 国产不卡在线一区| 91丨九色丨蝌蚪富婆spa| 91国产视频在线观看| 欧美日韩一区二区三区在线看| 欧美日韩激情在线| 精品免费视频.| 中文字幕在线观看一区| 亚洲成a人片在线观看中文| 日本怡春院一区二区| 国产精品羞羞答答xxdd| 色综合欧美在线视频区| 欧美日韩国产首页| 久久亚洲综合av| 一区在线播放视频| 首页国产欧美日韩丝袜| 国产精品资源站在线| 91丨九色丨蝌蚪丨老版| 欧美一区日韩一区| 国产精品国产三级国产aⅴ入口 | 91丨九色丨国产丨porny| 在线亚洲一区观看| 精品少妇一区二区三区在线播放| 黄一区二区三区| 91视频www| 精品久久人人做人人爽| 亚洲日本在线a| 经典三级一区二区| 欧美在线观看视频在线| 亚洲精品一区二区三区精华液| 国产精品久久久久久久久动漫| 亚洲不卡在线观看| 国产激情精品久久久第一区二区 | 久久精品久久99精品久久| 国产suv精品一区二区6| 欧美日韩在线播放三区四区| 久久久精品免费网站| 午夜视频在线观看一区二区| 免费观看日韩av| 日韩视频免费观看高清在线视频| 天天操天天干天天综合网| 麻豆成人av在线| eeuss影院一区二区三区 | 日韩av在线播放中文字幕| 成人开心网精品视频| 欧美va日韩va| 亚洲国产精品久久久男人的天堂| 成年人网站91| 国产人妖乱国产精品人妖| 视频一区二区三区入口| 99久久伊人精品| 久久久亚洲国产美女国产盗摄| 亚洲www啪成人一区二区麻豆| 成人免费不卡视频| 亚洲精品一区二区三区四区高清 | 久久影院午夜片一区| 日日噜噜夜夜狠狠视频欧美人| 国产盗摄女厕一区二区三区 | 91久久精品一区二区| 国产精品污www在线观看| 韩国女主播一区| 日韩精品一区国产麻豆| 偷拍一区二区三区四区| 色女孩综合影院| 亚洲免费观看高清完整| 成人aa视频在线观看| 国产女人18毛片水真多成人如厕| 国产一区999| 精品久久久久久无| 国产一区二区三区黄视频| 精品久久人人做人人爰| 黄页视频在线91| 精品久久一区二区| 麻豆成人久久精品二区三区红 | 亚洲图片激情小说| 99精品欧美一区二区三区综合在线| 国产清纯美女被跳蛋高潮一区二区久久w| 日韩av一区二区在线影视| 亚洲精品高清在线| 日本高清不卡aⅴ免费网站| 一区二区三区在线播放| 欧美手机在线视频| 视频一区二区三区入口| 日韩情涩欧美日韩视频| 国产一区二区影院| 国产丝袜美腿一区二区三区| 国产成人精品免费| 亚洲欧美在线视频| 一本色道久久综合精品竹菊| 亚洲最色的网站| 欧美日韩一区成人| 久久疯狂做爰流白浆xx| 欧美电影免费观看高清完整版在线 | 欧美日韩一区久久| 日韩av电影免费观看高清完整版在线观看 | 91啦中文在线观看| 亚洲电影激情视频网站| 欧美一区二区精品久久911| 国产一区日韩二区欧美三区| 国产欧美精品国产国产专区| 99精品视频一区二区三区| 亚洲高清免费观看高清完整版在线观看| 欧美性xxxxxxxx| 激情综合色播激情啊| 亚洲欧洲日韩av| 欧美精品成人一区二区三区四区| 久久国产精品区| 亚洲乱码国产乱码精品精可以看| 欧美高清激情brazzers| 国产乱人伦偷精品视频免下载 |