「java加法源码」java加法程序编写

博主:adminadmin 2023-03-21 21:37:09 531

本篇文章给大家谈谈java加法源码,以及java加法程序编写对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

希望做一个JAVA一百以内的加减法源代码

import java.util.Scanner;

public class JianJian {

public static void main(String[] args) {

System.out.println("一百以内的加减法");

System.out.println("输入-1,退出系统");

Scanner sc = new Scanner(System.in);

int score = 0;

int nums = 0;

while (true) {

int x = (int) (Math.random() * 2);//随机一个0,1的数字,当数字是1的时候,输出加法,当数字是0的时候,输出减法

int a = (int) (Math.random() * 100);

int b = (int) (Math.random() * 100);

if (x == 1) {

System.out.print(a + "+" + b + "=");

int c = sc.nextInt();

if (c == -1) {

break;

}

nums++;

if (c == (a + b)) {

score = score + 10;

}

} else {

if (a  b) {// 排除a-b0的情况.保证结果都是大于0的

b = a + b;

a = b - a;

b = b - a;

}

System.out.print(a + "-" + b + "=");

int c = sc.nextInt();

if (c == -1) {

break;

}

nums++;

if (c == (a - b)) {

score = score + 10;

}

}

}

System.out.println("做了" + nums + "道题目,得分: " + score);

}

}

输出

一百以内的加减法

输入-1,退出系统

87-18=59

23-6=17

72-30=42

97+14=-1//-1表示退出系统,所以不算做一道题

做了3道题目,得分: 20

编写程序来执行两个数字12和5的算术加法,乘法和除法(java程序)求源代码

double a = 12.0;

double b = 5.0;

int addtion_result = 0;//加法计算结果

int substraction_result = 0;//减法计算结果

int multipliction_result = 0;//乘法计算结果

double divide_result = 0.0;//除法计算结果

//加法

addtion_result = (int)(a + b);

//减法

substraction_result = (int)(a - b);

//乘法

multipliction_result = (int)(a * b) ;

//除法

divide_result = a / b;

java 写的计算器源代码只实现加减乘除四则运算即可

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

import java.util.Vector;

public class calculator

{

String str1="0"; //运算数1 初值一定为0 为了程序的安全

String str2="0"; //运算数2

String fh="+"; //运算符

String jg="";//结果

//状态开关 重要

int k1=1;//开关1 用于选择输入方向 将要写入str2或 str2

int k2=1;//开关2 符号键 次数 k21说明进行的是2+3-9+8 这样的多符号运算

int k3=1;//开关3 str1 是否可以被清0 ==1时可以 !=1时不能被清0

int k4=1;//开关4 str2 同上

int k5=1;//开关5 控制小数点可否被录入 ==1时可以 !=1 输入的小数点被丢掉

JButton jicunqi; //寄存器 记录 是否连续按下符号键

Vector vt=new Vector(20,10);

JFrame frame=new JFrame("sunshine---计算器");

JTextField jg_TextField=new JTextField(jg,20);//20列

JButton clear_Button=new JButton("清除");

JButton button0=new JButton("0");

JButton button1=new JButton("1");

JButton button2=new JButton("2");

JButton button3=new JButton("3");

JButton button4=new JButton("4");

JButton button5=new JButton("5");

JButton button6=new JButton("6");

JButton button7=new JButton("7");

JButton button8=new JButton("8");

JButton button9=new JButton("9");

JButton button_Dian=new JButton(".");

JButton button_jia=new JButton("+");

JButton button_jian=new JButton("-");

JButton button_cheng=new JButton("*");

JButton button_chu=new JButton("/");

JButton button_dy=new JButton("=");

public static void main(String[] args)

{

calculator calculator=new calculator();

}

calculator()

{

jg_TextField.setHorizontalAlignment(JTextField.RIGHT );//文本框 右对齐

JPanel pan=new JPanel();

pan.setLayout(new GridLayout(4,4,5,5));//四行四列 边距为5像素

pan.add(button7);

pan.add(button8);

pan.add(button9);

pan.add(button_chu);

pan.add(button4);

pan.add(button5);

pan.add(button6);

pan.add(button_cheng);

pan.add(button1);

pan.add(button2);

pan.add(button3);

pan.add(button_jian);

pan.add(button0);

pan.add(button_Dian);

pan.add(button_dy);

pan.add(button_jia);

pan.setBorder(BorderFactory.createEmptyBorder(5,5,5,5));//pan对象的边距

JPanel pan2=new JPanel();

pan2.add(jg_TextField);

JPanel pan3=new JPanel(); //为什么要 多此一句呢? 因为我不会设置 按钮的大小

pan3.setLayout(new FlowLayout());

pan3.add(clear_Button);

//clear_Button.setSize(10,10);//设置清零按钮的大小 吗的 不好使 !!

frame.setLocation(300, 200); //主窗口 出现在位置

frame.setResizable(false); //不能调大小

frame.getContentPane().setLayout(new BorderLayout());

frame.getContentPane().add(pan2,BorderLayout.NORTH);

frame.getContentPane().add(pan,BorderLayout.CENTER);

frame.getContentPane().add(pan3,BorderLayout.SOUTH);

frame.pack();

frame.setVisible(true);

//以上是 控件 和 布局

//下面是事件处理 程 序

//--------------- 数 字 键 ----------------

class JianTing implements ActionListener

{

public void actionPerformed(ActionEvent e)

{

String ss=((JButton)e.getSource()).getText();

jicunqi=(JButton)e.getSource();

vt.add(jicunqi);

if (k1==1)

{

if(k3==1)

{

str1="";

k5=1;//还原开关k5状态

}

str1=str1+ss;

//k2=1;

k3=k3+1;

//System.out.println(str1);

jg_TextField.setText(str1);//显示

}

else if(k1==2)

{

if (k4==1)

{

str2="";

k5=1; //还原开关k5状态

}

str2=str2+ss;

//k2=2;

k4=k4+1;

///////////////测试////////////////

jg_TextField.setText(str2);

}

}

}

//--------符 号-----------

class JianTing_fh implements ActionListener

{

public void actionPerformed(ActionEvent e)

{

String ss2=((JButton)e.getSource()).getText();

jicunqi=(JButton)e.getSource();

vt.add(jicunqi);

if(k2==1)

{

k1=2;//开关 k1 为1时,向数1写 为2时,向数2写

k5=1;

fh=ss2;

k2=k2+1;//按符号键的次数

}

else

{

int a=vt.size();

JButton c=(JButton)vt.get(a-2); if(!(c.getText().equals("+"))!(c.getText().equals("-"))!(c.getText().equals("*"))!(c.getText().equals("/")))

{

yuns();

str1=jg;

k1=2;//开关 k1 为1时,向数1写 为2时,向数2写

k5=1;

k4=1;

fh=ss2;

} k2=k2+1;

}

}

}

//--------清除-------

class JianTing_clear implements ActionListener

{

public void actionPerformed(ActionEvent e)

{

jicunqi=(JButton)e.getSource();

vt.add(jicunqi);

k5=1;

k2=1;

k1=1;

k3=1;

k4=1;

str1="0";

str2="0";

fh="";

jg="";

jg_TextField.setText(jg);

vt.clear();

}

}

//----------------等 于 ---------------------

class JianTing_dy implements ActionListener

{

public void actionPerformed(ActionEvent e)

{

jicunqi=(JButton)e.getSource();

vt.add(jicunqi);

yuns();

k1=1; //还原开关k1状态

//str1=jg;

k2=1;

k3=1;//还原开关k3状态

k4=1; //还原开关k4状态

str1=jg; //为7+5=12 +5=17 这种计算做准备

}

}

//----------------小数点 ---------------------

class JianTing_xiaos implements ActionListener

{

public void actionPerformed(ActionEvent e)

{

jicunqi=(JButton)e.getSource();

vt.add(jicunqi);

if(k5==1)

{

String ss2=((JButton)e.getSource()).getText();

if (k1==1)

{

if(k3==1)

{

str1="";

k5=1; //还原开关k5状态

}

str1=str1+ss2;

//k2=1;

k3=k3+1;

//System.out.println(str1);

jg_TextField.setText(str1);//显示

}

else if(k1==2)

{

if (k4==1)

{

str2="";

k5=1; //还原开关k5状态

}

str2=str2+ss2;

//k2=2;

k4=k4+1;

///////////////测试////////////////

jg_TextField.setText(str2);

}

}

k5=k5+1;

}

}

//注册 监听器

JianTing_dy jt_dy=new JianTing_dy();

JianTing jt= new JianTing();//临听数字键

JianTing_fh jt_fh= new JianTing_fh();//临 听符 号键

JianTing_clear jt_c=new JianTing_clear(); //清除键

JianTing_xiaos jt_xs=new JianTing_xiaos();// 小数点 键

button7.addActionListener(jt);

button8.addActionListener(jt);

button9.addActionListener(jt);

button_chu.addActionListener(jt_fh);

button4.addActionListener(jt);

button5.addActionListener(jt);

button6.addActionListener(jt);

button_cheng.addActionListener(jt_fh);

button1.addActionListener(jt);

button2.addActionListener(jt);

button3.addActionListener(jt);

button_jian.addActionListener(jt_fh);

button0.addActionListener(jt);

button_Dian.addActionListener(jt_xs);

button_dy.addActionListener(jt_dy);

button_jia.addActionListener(jt_fh);

clear_Button.addActionListener(jt_c);

//关闭事件处理程序

frame.addWindowListener(new WindowAdapter()

{

public void windowClosing(WindowEvent e)

{

System.exit(0);

}

});

}

//---------------计 算------------------

public void yuns()

{

double a2,b2;//运算数1,2

String c=fh;// 运算符

double jg2=0 ;//结果

if (c.equals(""))

{

//System.out.println("请输入运算符");

jg_TextField.setText("请输入运算符");

}

else

{

System.out.println("str1:"+str1);//调试时 使 用

System.out.println("str2:"+str2);//调试时 使 用

System.out.println("运算符:"+fh);//调试时 使 用

if (str1.equals(".")) //字符串 "." 转换成double型数据时 会出错 所以手工转

str1="0.0";

if (str2.equals("."))

str2="0.0";

a2=Double.valueOf(str1).doubleValue();

b2=Double.valueOf(str2).doubleValue();

System.out.println("double型的a2:"+a2); //调试时 使 用

System.out.println("double型的b2:"+b2); //调试时 使 用

if (c.equals("+"))

{

jg2=a2+b2;

}

if (c.equals("-"))

{

jg2=a2-b2;

}

if (c.equals("*"))

{

jg2=a2*b2;

}

if (c.equals("/"))

{

if(b2==0)

{

jg2=0;//0000000000000 by 0 cu!

}

else

{

jg2=a2/b2;

}

}

System.out.println("double型a2"+fh+"b2结果:"+jg2);

System.out.println();

jg=((new Double(jg2)).toString());

jg_TextField.setText(jg);

}

}

}

急!!对一个JAVA源代码加注释~~~

import java.awt.*; // 导入相应的awt工具组件

import java.awt.event.*;// 导入awt工具组件的事件类

/**

* 作用:Calc类用于演示加法计算器的功能p

* @author 网络用户

* @version 1.0 2009-6-3

* @since JDK 1.5

*/

class Calc extends WindowAdapter implements ActionListener

{

//以下声明相关变量

Frame f; //窗口

// Button b0,b1,b2,b3,b4,b5,b6,b7,b8,b9;

Button b[] = new Button[10]; //10个按钮,分别对应数字0到9

Button be, badd, bc; //bc为=,badd为+,bc为归0按钮

TextField answer; //文本框answer用于显示相加的结果

Panel p; //面板

int t1, t2,result; //t1,t2分别表示被加数,加数

Button bmin, bmul, bdev; //bmin为-,bmul为*,bdev为/

String op1 = null,lastOP = null;

boolean isOK = true;

/**

* 作用:main方法为程序运行的入口

* @param args

*/

public static void main( String args[] )

{

Calc cg = new Calc(); //创建一个calc类的对象

cg.go(); //调用go方法,显示加法器界面,并完成加法功能

}

/**

* 作用:go()方法用于显示加法器界面,并完成加法功能

*/

public void go()

{

p = new Panel(); //创建面板的对象,10个按钮将在此面板对象上添加和显示

answer = new TextField("0", 15); //设置文本框的默认值为0,文本框的长度15个字符

b[0] = new Button("0"); //以下就是那10个按钮,按钮上的文本就是0到9的数字

b[1] = new Button("1");

b[2] = new Button("2");

b[3] = new Button("3");

b[4] = new Button("4");

b[5] = new Button("5");

b[6] = new Button("6");

b[7] = new Button("7");

b[8] = new Button("8");

b[9] = new Button("9");

be = new Button("="); //=号

badd = new Button("+"); //+号

bc = new Button("C"); //归0按钮

bmin = new Button("-"); //-号

bmul = new Button("*"); //*号

bdev = new Button("/"); //除号

p.setLayout(new GridLayout(4, 4)); //将面板设置为4行3列,即12个格子,刚好可以存放地10个数字按钮另加+号按钮和=号按钮,共12个按钮

p.add(b[1]);

p.add(b[2]);

p.add(b[3]);

p.add(b[4]);

p.add(b[5]);

p.add(b[6]);

p.add(b[7]); //添加10个数字按钮到面板上

p.add(b[8]);

p.add(b[9]);

p.add(b[0]);

for( int i = 0; i b.length; i++ )

b[i].addActionListener(this); //为10个数字按钮添加事件监听器,以用于实现加法功能

p.add(be); //添加=号按钮到面板上

p.add(bc); //归0按钮

p.add(badd); //添加+号按钮到面板上

be.addActionListener(this); //为=号按钮添加事件监听器,用于实现加法功能

bc.addActionListener(this); //为归0按钮添加事件监听器,用于将计算结果归0

badd.addActionListener(this); //为+号按钮添加事件监听器,用于实现加法功能

p.add(bmin); //-号

p.add(bmul); //*号

p.add(bdev); //除号

bmin.addActionListener(this);

bmul.addActionListener(this);

bdev.addActionListener(this);

f = new Frame("计算器"); //创建一个Frame对象(窗口),窗口的标题就是calc

f.setLocation(300, 300); //窗口的弹出位置

f.setSize(300, 300); //窗口的大小为300*300像素

f.add(answer, "North"); //将文本框设置在窗口的北部(上),窗口的默认布局为BorderLayout,即东西南北中5个位置

f.add(p, "Center"); //将面板设置在窗口的中部(中)

f.addWindowListener(this); //为窗口添加事件监听器,用于实现关闭窗口的功能

f.pack(); //此方法用于窗口到合适的大小

f.setVisible(true); //显示窗口,为false时将不会显示窗口

}

//在10个数字按钮和3个功能按钮上单击,将触发此方法

public void actionPerformed( ActionEvent e )

{

if( e.getSource() == bc )

{//单击了归0按钮,设置为默认值

result = 0;

lastOP = null ;

answer.setText("0"); //文本框设为0

isOK = true; //已经经过运算了

} else if( e.getSource() == badd || e.getSource() == bmin || e.getSource() == bmul || e.getSource() == bdev ||e.getSource() == be)

{//单击运算符号的按钮

op1 = e.getActionCommand();

getResult(op1);

} else

{//单击0到9之间的任意一个数字按钮

for( int i = 0; i b.length; i++ )

if( e.getSource() == b[i] )

{

if( isOK == true )

{

answer.setText(b[i].getActionCommand());

isOK = false;

}

else

{

answer.setText(answer.getText()+b[i].getActionCommand()); //在文本框上显示连续单击那几个数字

}

}

}

}

/**

* 作用:getResult()方法用于计算出结果值,并在文本框显示出来P

* @param op 本次操作运算符

* @param text

*/

private void getResult( String op )

{

if(answer.getText().equals("除数不能为0"))

{

answer.setText(result+"");

return;

}

if( lastOP==null )

{//没有上一次的操作

if(op.equals("=")){

return;

}else{

result = Integer.parseInt(answer.getText());

}

} else if( lastOP.equals("+") )

{//上一次单击了+号按钮

result = result + Integer.parseInt(answer.getText());

answer.setText(result+""); //文本框设为0

} else if( lastOP.equals("-") )

{//单击-号按钮

result = result - Integer.parseInt(answer.getText());

answer.setText(result+"");//在文本框上显示相加的结果

} else if( lastOP.equals("*") )

{//单击*号按钮

result = result * Integer.parseInt(answer.getText());

answer.setText(result+""); //文本框设为0

} else if( lastOP.equals("/") )

{//单击/号按钮

if(answer.getText().equals("0")) answer.setText("除数不能为0"); //文本框设为0

else{

result = result / Integer.parseInt(answer.getText());

answer.setText(result+""); //文本框设为0

}

}

isOK = true; //已经经过运算了

lastOP = op; //记下本次操作

}

//关闭窗口,触发此方法

public void windowClosing( WindowEvent ev )

{

System.exit(0); //退出程序

}

}

编写程序来执行两个数字12和5的算术加法,乘法和除法(java程序)求源代码

楼上的除法运算出错,a

/

b取商,a%b取余,同数学运算是有差异的。还有就是双精度浮点数的加减乘除会损失精度。建议用BigDecimal提供的方法来运算。

如:

BigDecimal

a

=

new

BigDecimal(12);

BigDecimal

b

=

new

BigDecimal(5);

加法运算:a=a.add(b);

减法运算:a=a.subtract(b);

乘法运算:a=a.multiply(b);

除法运算:a=a.divide(b);

获取运算结果:a.toString()

,

a.longValue()

,

a.intValue()

.....等等

保留两位小数,四舍五入:a=a.divide(b).setScale(2,

BigDecimal.ROUND_HALF_UP);

大量方法建议自查api文档。

java加法源码的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java加法程序编写、java加法源码的信息别忘了在本站进行查找喔。