当前位置:首页 > 编译原理 简单计算器程序设计实验
1.实验目的:用户可以直接输入表达式(没有空格),遇到等号后说明输入结束,输出运算 结果,达到计算的目的。
2.实验要求:设计、实现一个简单的计算器程序。
3.实验环境:一台配置为1G的XP操作系统的PC机 , myeclipse9.0. 4.实验原理:用java语言编写界面和后台简单的计算处理。
5.软件设计与编程:首先编写好计算器各按键的布局和界面;编写好后台简 单的计算事务处理程序;在上部的文本框中显示计算过程 和结果。
对应源程序代码如下:
package jisuanqi; import java.util.*; import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.applet.*;
public class Calculator extends JApplet implements ActionListener {
boolean i=true;
private JButton num0=new JButton(\); private JButton num1=new JButton(\); private JButton num2=new JButton(\); private JButton num3=new JButton(\); private JButton num4=new JButton(\); private JButton num5=new JButton(\); private JButton num6=new JButton(\); private JButton num7=new JButton(\); private JButton num8=new JButton(\); private JButton num9=new JButton(\); private JButton zuok=new JButton(\); private JButton youk=new JButton(\); private JButton dian=new JButton(\); private JButton NULL=new JButton(\); private JButton plu=new JButton(\); private JButton min=new JButton(\); private JButton mul=new JButton(\); private JButton div=new JButton(\); private JButton equ=new JButton(\);
private JButton cle=new JButton(\);//清除 private JTextField space=new JTextField(20);
public void init() {
JPanel text=new JPanel();
text.setLayout(new FlowLayout()); text.add(space);
JPanel buttons=new JPanel();
buttons.setLayout(new GridLayout(5,4)); buttons.add(num7); buttons.add(num8); buttons.add(num9); buttons.add(div);
buttons.add(num4); buttons.add(num5); buttons.add(num6); buttons.add(mul);
buttons.add(num1); buttons.add(num2); buttons.add(num3); buttons.add(min);
buttons.add(num0); buttons.add(cle); buttons.add(NULL); buttons.add(plu);
buttons.add(zuok); buttons.add(youk); buttons.add(dian); buttons.add(equ);
(num9).addActionListener(this); (num8).addActionListener(this); (num7).addActionListener(this); (num6).addActionListener(this); (num5).addActionListener(this); (num4).addActionListener(this); (num3).addActionListener(this); (num2).addActionListener(this); (num1).addActionListener(this); (num0).addActionListener(this); (plu).addActionListener(this); (min).addActionListener(this); (mul).addActionListener(this); (div).addActionListener(this); (equ).addActionListener(this);
(cle).addActionListener(this); (zuok).addActionListener(this); (youk).addActionListener(this); (dian).addActionListener(this); setLayout(new BorderLayout()); add(\,text); add(\,buttons); space.setText(\); }
public void actionPerformed(ActionEvent e) {
if(e.getSource()==num9) {
if(i==true) {
space.setText(\); i=false; }
else space.setText(space.getText()+'9'); }
if(e.getSource()==num8) {
if(i==true) {
space.setText(\); i=false; }
else space.setText(space.getText()+'8'); }
if(e.getSource()==num7) {
if(i==true) {
space.setText(\); i=false; }
else space.setText(space.getText()+'7'); }
if(e.getSource()==num6) {
if(i==true) {
space.setText(\); i=false; }
else space.setText(space.getText()+'6'); }
if(e.getSource()==num5) {
if(i==true) {
space.setText(\); i=false; }
else space.setText(space.getText()+'5'); }
if(e.getSource()==num4) {
if(i==true) {
space.setText(\); i=false; }
else space.setText(space.getText()+'4'); }
if(e.getSource()==num3) {
if(i==true) {
space.setText(\); i=false; }
else space.setText(space.getText()+'3'); }
if(e.getSource()==num2) {
if(i==true) {
space.setText(\); i=false; }
else space.setText(space.getText()+'2'); }
if(e.getSource()==num1) {
if(i==true)
共分享92篇相关文档