1st 结对编程:简易四则运算
结对编程:简易四则运算
功能:进行简易的四则运算,并根据给出的结果判断正误。
实现:使用java的图形化界面实现。
导入包库
package six;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.lang.*;
用于数字计算的Num类
class Num{ //定义数字类
private int a;
public Num()
{
this.a = (int)(Math.random()*10000);
}
public Num(int i)
{
this.a = (int)(Math.random()*4)+1;
}
public int get_num()
{
return this.a;
}
public int num_sum(Num B)
{
return this.a + B.a;
}
public int num_dec(Num B)
{
return this.a - B.a;
}
public int num_c(Num B)
{
return this.a * B.a;
}
public int num_chu(Num B)
{
return this.a / B.a;
}
public void flash()
{
this.a = (int)(Math.random()*100);
}
public void flash_t()
{
this.a = (int)(Math.random()*4)+1;
}
public boolean pd(int i)
{
if(this.a == i)
return true;
else
return false;
}
}
主类Main
public class Main {
private static Num a = new Num(); //a,b
private static Num b = new Num();
private static Num c = new Num(1);
private static int q = 0;
private static String p;
private static JFrame frame = new JFrame("简单四则运算");
private static JLabel label1 = new JLabel("A");
private static JLabel label2 = new JLabel("*");
private static JLabel label3 = new JLabel("B");
private static JLabel label4 = new JLabel(" "+"="+" ");
private static JLabel label5 = new JLabel("结果");
private static JButton button = new JButton("查看");
private static JButton bt1 = new JButton("下一题");
private static JButton bt2 = new JButton("退出");
private static JTextField text = new JTextField(5);
private static JPanel pane = new JPanel(); //容器
public static void main(String[] args) {
pane.setBorder(BorderFactory.createEmptyBorder(20,60,20,60));
pane.setLayout(new GridLayout(0,5)); //设置布局
pane.add(label1);
pane.add(label2);
pane.add(label3);
pane.add(label4);
pane.add(text);
pane.add(label5);
pane.add(button);
pane.add(bt1);
pane.add(bt2);
if(c.pd(1))
{
p = "+";
q = a.num_sum(b);
}
if(c.pd(2))
{
p = "-";
q = a.num_dec(b);
}
if(c.pd(3))
{
p = "*";
q = a.num_c(b);
}
if(c.pd(4))
{
p = "/";
q = a.num_chu(b);
}
frame.getContentPane().add(pane,BorderLayout.CENTER);
button.setMnemonic(KeyEvent.VK_I);
button.addActionListener(new ActionListener(){ //鼠标单击事件
public void actionPerformed(ActionEvent e){
if(q == Integer.parseInt(text.getText().trim()))
label5.setText("正确!");
else
label5.setText("错误!");
}
});
bt1.setMnemonic(KeyEvent.VK_H);
bt1.addActionListener(new ActionListener(){ //鼠标单击事件
public void actionPerformed(ActionEvent e){
a.flash();
b.flash();
c.flash_t();
if(c.pd(1))
{
p = "+";
q = a.num_sum(b);
}
if(c.pd(2))
{
p = "-";
q = a.num_dec(b);
}
if(c.pd(3))
{
p = "*";
q = a.num_c(b);
}
if(c.pd(4))
{
p = "/";
q = a.num_chu(b);
}
label1.setText(" "+a.get_num()+" ");
label2.setText(p);
label3.setText(" "+b.get_num()+" ");
text.setText(" ");
label5.setText("结果");
}
});
bt2.setMnemonic(KeyEvent.VK_T);
bt2.addActionListener(new ActionListener(){ //鼠标单击事件
public void actionPerformed(ActionEvent e){
System.exit(0);
}
});
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.pack();
label1.setText(" "+a.get_num()+" ");
label2.setText(p);
label3.setText(" "+b.get_num()+" ");
frame.setVisible(true);
}
}
ssh://git@git.coding.net:amberpass/Calculate.git
https://git.coding.net/amberpass/Calculate.git
程序运行结果:




同组人:胡丽娜
1st 结对编程:简易四则运算的更多相关文章
- 结对编程项目——四则运算vs版
结对编程项目--四则运算vs版 1)小伙伴信息: 学号:130201238 赵莹 博客地址:点我进入 小伙伴的博客 2)实现的功能: 实现带有用户界面的四则运算:将原只能在 ...
- 20175324王陈峤宇 2018-2019-2《Java程序设计》结对编程项目-四则运算 第一周 阶段性总结
20175324王陈峤宇 2018-2019-2<Java程序设计>结对编程项目-四则运算 第一周 阶段性总结 需求分析 这次的结对作业是要求我们利用栈来设计一个计算器. 自动生成四则运算 ...
- 20175229许钰玮 2018-2019-2《Java程序设计》结对编程项目-四则运算 第一周 阶段性总结
20175229许钰玮 2018-2019-2<Java程序设计>结对编程项目-四则运算 第一周 阶段性总结 需求分析 自动生成四则运算题目(加.减.乘.除). 既可以用前缀算法(波兰算法 ...
- 20175311胡济栋 2018-2019-2《Java程序设计》结对编程项目-四则运算 第二周 阶段性总结
20175311胡济栋 2018-2019-2<Java程序设计>结对编程项目-四则运算 第二周 阶段性总结 需求分析 这是利用栈来设计一个计算器的第二阶段总结. 自动生成四则运算的题目( ...
- 20165223 结对编程之四则运算week2-整体总结
目录 一.结对对象 二.需求分析 三.设计思路 四.核心代码 五.功能截图 六.结对感受 一.结对对象 担任角色(本周交换角色,流动学习) 驾驶员(Driver):20165218 赵冰雨(是控制键盘 ...
- 20165223 结对编程之四则运算week1-阶段性总结
目录 一.结对对象 二.需求分析 三.设计思路 四.功能截图 五.结对感受 一.结对对象 担任角色 驾驶员(Driver):20165223 蔡霓(是控制键盘输入的人) 领航员(Navigator): ...
- 2017-2018-2 1723 『Java程序设计』课程 结对编程练习-四则运算-最后阶段
2017-2018-2 1723 『Java程序设计』课程 结对编程练习-四则运算-最后阶段 最后的一周,时间越来越紧张,因为之前的拖沓和一些事情的耽误,导致了如今的紧张,这一周应该是我们小组效率最高 ...
- 2017-2018-2 1723 『Java程序设计』课程 结对编程练习-四则运算-准备阶段
2017-2018-2 1723 『Java程序设计』课程 结对编程练习-四则运算-准备阶段 在一个人孤身奋斗了将近半个学期以后,终于迎来的我们的第一次团队协作共同编码,也就是,我们的第一个结对编程练 ...
- 2017-2018-2 1723 『Java程序设计』课程 结对编程练习-四则运算-中坚阶段
2017-2018-2 1723 『Java程序设计』课程 结对编程练习-四则运算-中坚阶段 如今的编写,进入了一段时间的中坚阶段,小伙伴的思路虽然很一致,但是总是存在着一定问题,这就造成了我们中坚阶 ...
随机推荐
- 20155212 2016-2017-2 《Java程序设计》第2周学习总结
20155212 2016-2017-2 <Java程序设计>第2周学习总结 教材学习内容总结 三种print System.out.println:在标准输出中显示文字后换行. Syst ...
- 20155306 实验二 Java面向对象程序设计
20155306 实验二 Java面向对象程序设计 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O.L.I.D原则 了解设计模式 实验要 ...
- 20155322 2017-2018-1《信息安全系统设计》第二周 课堂测试 Linux下C语言实现MYOD
20155322 2017-2018-1<信息安全系统设计>第二周 课堂测试 Linux下C语言实现MYOD [博客目录] 静态库测试 实现方法 相关资料 操作 动态库测试 实现方法 相关 ...
- 20155327 2016-2017-2 《Java程序设计》第10周学习总结
20155327 2016-2017-2 <Java程序设计>第十周学习总结 教材学习内容总结 Java的网络编程 网络编程 网络编程就是在两个或两个以上的设备(例如计算机)之间传输数据. ...
- 【原创】user.id字段
odoo中User.ID 字段是用户登录表 res_users 中的字段,所以要关联某个用户或是判断某个用户,可以利用该字段. 例如:在某个 界面中的domain中,要求显示的是关联某用户的单子,则如 ...
- 【JUC源码解析】CyclicBarrier
简介 CyclicBarrier,一个同步器,允许多个线程相互等待,直到达到一个公共屏障点. 概述 CyclicBarrier支持一个可选的 Runnable 命令,在一组线程中的最后一个线程到达之后 ...
- VirtualBox复制CentOS后提示Device eth0 does not seem to be present的解决方法
使用VirtualBox复制一份CentOS后重新设置了网卡地址,导致启动网络服务出现下图错误 解决方案 执行命令,查看/etc/udev/rules.d/70-persistent-net.rule ...
- selenium webdriver API详解(一)
本系列主要讲解webdriver常用的API使用方法(注意:使用前请确认环境是否安装成功,浏览器驱动是否与谷歌浏览器版本对应) 一:打开某个网址:get() from selenium import ...
- 如何停止AAD服务
Connect-MsolService (Get-MSOLCompanyInformation).DirectorySynchronizationEnabled 用这个命令查看是enable还是Dis ...
- mtv网站架构模式适合企业网站应用吗?
mtv网站架构模式适合企业网站应用吗?有时候在思考这样一个问题. 从开发角度来说,本来mvc的进度慢了些,如果在数据库管理方面用sql的话,管理起来也不很方便.小企业网本来数据就不很多,也没什么太多安 ...