四则界面运算代码2

package opar;

import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class T_Event implements ActionListener, KeyListener {

static int t = 0;
    static int f = 0;
    static int con = 1;// 默认适中
    static int del = 0;
    private static int sum=1000;
    private static int times=0;
    void Set_t(int t) {
        this.t = this.t + 1;
    }

void Set_f(int f) {
        this.f = this.f + 1;
    }

void Set_del() {
        while (new T().Get_T2() == 0 || new T().Get_T() % new T().Get_T2() != 0) {
            if (con == 0)
                new T().Set_rom_rom1(0, 20);

else if (con == 1)
                new T().Set_rom_rom1(11, 500);

else if (con == 2)
                new T().Set_rom_rom1(501, 10000);

new T().set_T_T1_T2_T3();

}
    }

int Get_t() {
        return t;
    }

int Get_f() {
        return f;
    }

public void actionPerformed(ActionEvent e) {
        // TODO Auto-generated method stub

if (e.getSource() == new T().button_1)// 加法
        {
            del = 0;
            new T().Set_T1("+");
        }
        if (e.getSource() == new T().button_2)// 减法
        {
            del = 0;
            new T().Set_T1("-");
        }
        if (e.getSource() == new T().button_3)// 乘法
        {
            del = 0;
            new T().Set_T1("*");
        }
        if (e.getSource() == new T().btnNewButton_3)// 除法
        {
            this.Set_del();
            del = 1;
            new T().Set_T1("/");

}
        if(e.getSource()==new T().Get_btnNewButton_4())
        {
            this.t=0;//初始化
            this.f=0;//初始化
            this.times=0;
            
            //new T().Get_T12().setText();
            this.sum=10000;
            new T().set_T_T1_T2_T3();
            
            
            new T().Set_T_T1_T2_T3(true);
        }
        if (e.getSource() == new T().Get_btnNewButton())// 简单
        {
            new T().Set_rom_rom1(0, 20);
            new T().set_T_T1_T2_T3();
            con = 0;
            if (del == 1)
                this.Set_del();

}
        if (e.getSource() == new T().Get_btnNewButton_1())// 适中
        {
            new T().Set_rom_rom1(11, 500);
            new T().set_T_T1_T2_T3();
            con = 1;
            if (del == 1)
                this.Set_del();

}
        if (e.getSource() == new T().Get_btnNewButton_2())// 困难
        {
            new T().Set_rom_rom1(501, 10000);
            new T().set_T_T1_T2_T3();
            con = 2;
            if (del == 1)
                this.Set_del();

}
        if (e.getSource() == new T().button)
            System.exit(0);
        if (e.getSource() == new T().Get_Com()) {
            int index = new T().Get_Com().getSelectedIndex();
            switch (index) {
            case 0:

new T().Get_frame().getContentPane().setBackground(Color.RED);
                break;
            case 1:
                new T().Get_frame().getContentPane()
                        .setBackground(Color.orange);
                break;
            case 2:
                new T().Get_frame().getContentPane()
                        .setBackground(Color.yellow);
                break;
            case 3:
                new T().Get_frame().getContentPane().setBackground(Color.green);
                break;
            case 4:
                new T().Get_frame().getContentPane().setBackground(Color.blue);
                break;

}
        }

}

@Override
    public void keyPressed(KeyEvent arg0) {
       //判断是回车
        
        if (arg0.getKeyCode() == KeyEvent.VK_ENTER) {
           if(new T().Get_T12().getText().length()!=0)
               {
               sum=Integer.parseInt(new T().Get_T12().getText());//回车初始化题目数量
               }
           
            // Pattern pattern=Pattern.compile("[0-9]*");!isNum.matches()||
            // Matcher isNum=pattern.matcher(new T().Get_T3());
            if(this.sum>times)
            {
            if (new T().Get_T3().matches("-?[0-9]+.*[0-9]*")) {
                new T().Set_T4_T5_T6_T7();
                if (new T().Get_n() == Integer.parseInt(new T().Get_T3())) {
                    Set_t(t);
                    new T().Set_T9("你很厉害,答对了!");
                }

else {
                    Set_f(f);
                    new T().Set_T9("你太大意了!答错了");
                    System.out.print(new T().Get_n()+"    "+Integer.parseInt(new T().Get_T3()));
                }

new T().Set_T8_T10_T11();
                
                times++;
                
                //加减乘除的
                if (con == 0) {
                    new T().Set_rom_rom1(0, 20);
                    this.Set_del();
                } else if (con == 1) {
                    new T().Set_rom_rom1(21, 500);
                    this.Set_del();
                } else if (con == 2) {
                    new T().Set_rom_rom1(501, 10000);
                    this.Set_del();
                }
                
                
                
                
                new T().set_T_T1_T2_T3();
                
                if (del == 1)
                    this.Set_del();
            } else {
                new T().Set_T9("你输入的 “ " + new T().Get_T3() + " ”是非法数值");
                new T().Set_T3();

}
            
            
            }
            else
            {
                new T().Set_T9(new T().Get_T9().getText()+"你已经完成"+new T().Get_T12().getText()+"道题目");
                new T().Set_T_T1_T2_T3(false);
            }

}

}

public void keyReleased(KeyEvent arg0) {
    }

public void keyTyped(KeyEvent arg0) {
    }
}

时间: 2024-10-11 05:30:34

四则界面运算代码2的相关文章

基于MFC的含四则混合运算的计算器

今天无意间发现win7系统的标准型计算器连最基本的四则混合运算都没做,刚刚好公司给了我一个工作任务,就是用MFC实现一个含四则混合运算的计算器. 我在网上查询资料,发现大部分只是实现了基本的加减乘除运算,而含四则混合运算的也没有能够说得清楚明白.于是我搜索四则混合运算算法,发现要实现四则混合运算,就要用到逆波兰算法,而使用逆波兰算法,就要先把算术式从中缀表达式转换为后缀表达式. 所谓中缀表达式,就是我们平常的算术式,例如:1+2-3*4/5. 而后缀表达式,就是将运算符写在操作数之后,上面算术式

JAVA实现简单四则混合运算

JAVA实现简单四则混合运算,说明:该计算器支持实则混合运算,如 2*(3+1 )/ 4-3 *9+ 8/ 3*4- 5,则输出:-19.333332 需要说明的事括号必须是英文的.源码如下仅供学习: 运行后直接在Console里面敲然后回车即可 [1].[代码] [Java]代码 跳至 [1] ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36

第四次作业 结对编程 (四则混合运算)

一 需求分析 本次我们做的程序是数学的四则混合运算,并且增加了部分人性化的功能,接下来,我们谈谈这个程序的相关需求,此程序是一个1—10的四则混合运算,那么可以想到主要用于小学生,(ps 个人想法,不排除其他高年级的使用,因为用户可以输入任意的随机数范围),此外,本程序还可能会出现在家庭.教育机构和部分教学网站上面,因为他们可能会给学生出一些简单的数学题目,可以自由设置测试时间,题目数量等内容,而这一程序正好解决了这一个问题,我想,产品的需求必须首先知道用户需要什么,要以客户为中心.而这个产品正

MathExamV2.0四则混合运算计算题生成器

MathExamV2.0四则混合运算计算题生成器----211606360 丁培晖 211606343 杨宇潇 一.预估与实际 PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟) Planning 计划 ? Estimate ? 估计这个任务需要多少时间 60 100 Development 开发 ? Analysis ? 需求分析 (包括学习新技术) 360 440 ? Design Spec ? 生成设计文档 20 20 ? D

asp.net实现运算+代码封装+策略模式

设计界面: 测试界面: 代码: using System; using System.Collections.Generic; using System.Linq; using System.Web; /// <summary> ///Class2 的摘要说明 /// </summary> public interface ITaxStragety { int Calcul(int a, int b); } class Class2 : ITaxStragety { public

java(课程设计之记事本界面部分代码公布)

代码:涉及记事本的一些界面......!! 1 /* 2 *java课程设计之记事本(coder @Gxjun) 3 * 编写一个记事本程序 4 * 要求: 5 * 用图形用户界面实现. 6 * 能实现编辑.保存.另存为.查找替换等功能. 7 * 提示:使用文件输入输出流. 8 */ 9 package project; 10 11 import javax.swing.*; 12 import java.awt.*; 13 import java.awt.event.*; //引用类设置触发事

软件工程学习之小学四则混合运算出题软件 Version 1.00 设计思路及感想

对于小学四则混合运算出题软件的设计,通过分析设计要求,我觉得为了这个软件在今后便于功能上的扩充,可以利用上学期所学习的<编译原理>一课中的LL1语法分析及制导翻译的算法来实现.这样做的好处有以下几点: 1. 由于LL1制导翻译是一项成熟且可靠的技术,并且其递归下降算法易于改编为算式生成算法: 2. 我们有系统的方法可以获得较复杂表达式的LL1文法,则可以方便地生成形式丰富的算式: 3.由于四则混合运算中需要考虑运算优先级的问题,那么采用LL1分析器可以很方便的实现计算表达式的功能: 4.当用户

Xamarin iOS教程之编辑界面编写代码

Xamarin iOS教程之编辑界面编写代码 Xamarin iOS的Interface Builder Interface Builder被称为编辑界面. 它是一个虚拟的图形化设计工具,用来为iOS应用程序创建图形界面. 单击MainStoryboard.storyboard文件,就能够打开编辑界面了. 在Xamarin Studio 5.2.1后,编辑界面直接使用的是Storyboard故事面板,曾经则使用的是XIB(对于XIB的使用会在后面的章节中解说).大学霸它们之间最大的不同在于Sto

C语言写的秒速计算四则混合运算项目

开发语言:C语言 开发工具:Visual Studio 2017 整理时间:2017年8月2日 源代码:500行: 开发方式:C语言多文件模式开发 实现功能:在文件中写入四则混合运算表达式(无论有多长...),按运行即可得出结果. 四则混合运算表达式形如: (19+67)*33-45/5+17*52+39/3+.... 意义:在实际快速计算的同时,对学习也有如下意义:对堆栈的学习应用,多多文件的学习巩固 项目演示截图: 其他C语言项目参考: