课堂Java小程序(加减乘除与验证码)

一、编写一个程序,用户输入两个数,求出其加减乘除,并用消息框

显示计算结果。

1.设计思想:从键盘输入两个数字和运算符,然后计算。将输入的数字及运算符由字符型转换为整型,再用if判断输入的运算符,根据运算符进行对应的+-*/运算,最后输出结果。

2.程序流程图:

课堂Java小程序(加减乘除与验证码)

3.Calculate.java 源程序代码:

package demo;

import javax.swing.JOptionPane;  // import class JOptionPane

public class Calculate {

public static void main( String args[] )

{

String firstNumber,   // first string entered by user

secondNumber, // second string entered by user

obj1;                    //运算符 entered by user

int number1,          // first number to add

number2,          // second number to add

obj2,                //运算符

sum,            // sum of number1 and number2

subtract,     //number1 和 number2的差

multiply,      //number 和 number2的乘积

divide;          //number1÷number2

// read in first number from user as a string

firstNumber =

JOptionPane.showInputDialog( "请输入第一个数:" );

// read in second number from user as a string

secondNumber =

JOptionPane.showInputDialog( "请输入第二个数:" );

//输入+-*/符号

obj1=

JOptionPane.showInputDialog( "请输入数字1/2/3/4中任意一个,分别代表的是 + - * / :" );

// convert numbers from type String to type int

number1 = Integer.parseInt( firstNumber );

number2 = Integer.parseInt( secondNumber );

obj2 = Integer.parseInt( obj1);

//计算加减乘除

sum = number1 + number2;

subtract =  number1 - number2;

multiply =  number1 * number2;

divide =  number1 / number2;

//匹配运算符与运算结果

if(obj2==1)

JOptionPane.showMessageDialog(

null, number1 +"+"+number2+"  = " + sum,

"Results",JOptionPane.PLAIN_MESSAGE );

else if(obj2==2)

JOptionPane.showMessageDialog(

null, number1 +"-"+number2+"  =" + subtract,

"Results",JOptionPane.PLAIN_MESSAGE );

else if(obj2==3)

JOptionPane.showMessageDialog(

null, number1+"*"+number2+"  =" + multiply,

"Results",JOptionPane.PLAIN_MESSAGE );

else if(obj2==4)

JOptionPane.showMessageDialog(

null, number1+"/"+number2+"  = " + divide,

"Results",JOptionPane.PLAIN_MESSAGE );

else

JOptionPane.showMessageDialog(

null, "此运算符错误,请重新运行程序并输入",

"Results",JOptionPane.PLAIN_MESSAGE );

// display the results

System.exit( 0 );   // terminate the program

}

}

4.结果:

(1)加法运算:

课堂Java小程序(加减乘除与验证码) 课堂Java小程序(加减乘除与验证码)

课堂Java小程序(加减乘除与验证码) 课堂Java小程序(加减乘除与验证码)

(2)减法运算:

课堂Java小程序(加减乘除与验证码) 课堂Java小程序(加减乘除与验证码)

课堂Java小程序(加减乘除与验证码) 课堂Java小程序(加减乘除与验证码)

(3)乘法运算:

课堂Java小程序(加减乘除与验证码) 课堂Java小程序(加减乘除与验证码)

课堂Java小程序(加减乘除与验证码) 课堂Java小程序(加减乘除与验证码)

(4)除法运算:

课堂Java小程序(加减乘除与验证码) 课堂Java小程序(加减乘除与验证码)

课堂Java小程序(加减乘除与验证码) 课堂Java小程序(加减乘除与验证码)

(5)运算符输入错误:

课堂Java小程序(加减乘除与验证码) 课堂Java小程序(加减乘除与验证码)

课堂Java小程序(加减乘除与验证码) 课堂Java小程序(加减乘除与验证码)

二、在上网时,我们经常会看到以下这种对话框,要用户输入一个验证码。要求根据Random Str.java:使用类型转换生成六位验证字符串,示例程序每次运行时,都会生成不同的字符串。实现上述用户输入验证码的功能。(可以扩展如何实现整个用户登录界面的设计和功能的实现。

1.设计思想:先用类型转换生成6位随机验证字符串,然后用户输入验证码,判断生成的验证码与用户所输入的是否一致,若一致,验证成功,否则,验证失败。

2.程序流程图:

课堂Java小程序(加减乘除与验证码)

3.源程序:Yanzhengma.java文件

package demo;

import javax.swing.*;

public class Yanzhengma {

public static void main(String[] args){

//6位随机字符串的生成

String result = "";

for(int i = 0 ; i < 6 ; i ++)

{

int intVal = (int)(Math.random() * 26 + 97);

result = result + (char)intVal;

}

//输入验证码

String input=JOptionPane.showInputDialog("验证码:\n"+result,"

请在此输入以上验证码");

//判断验证码与所输入的是否一致

if(input.equals(result))

{

JOptionPane.showMessageDialog(null, "验证成功!","恭喜!

", JOptionPane.PLAIN_MESSAGE);

}

else

{

JOptionPane.showMessageDialog(null, "对不起,验证失败!

","请重新验证", JOptionPane.PLAIN_MESSAGE);

}

}

}

4.结果:

课堂Java小程序(加减乘除与验证码) 课堂Java小程序(加减乘除与验证码)

课堂Java小程序(加减乘除与验证码)

课堂Java小程序(加减乘除与验证码) 课堂Java小程序(加减乘除与验证码)

5.实验总结:在判断验证码与所输入的是否一致时,我开始编写的程序是

if(input==result),可无论验证码与所输入的是否一致,它都报错。

课堂Java小程序(加减乘除与验证码) 课堂Java小程序(加减乘除与验证码)

后来想起老师上课讲的“equals()”与“==”等价,于是用了if(input.equals(result)),程序才成功。但现在还是不理解为什么用“==”不行。

 

上一篇:P2147 [SDOI2008]洞穴勘测(LCT)


下一篇:一次生产环境下MongoDB备份还原数据