作业:实现0-10的随机四则运算
要想实现0-10的随机四则运算,首先知道用户需要进行怎样的运算,当用户选择了运算类型后,通过回车键系统则会随机出现两个数,此时用户需输入用户的答案,系统则会根据用户输入的答案来判断对错,并返回用户答对了多少题和错了多少题。
package com.hxxy.test;
import java.util.Scanner;
public class Calculater {
public static int right; //做对的题数
public static int fault ;//做错的题数
/**
* @param args
*/
该函数是为了让用户选择运算类型
public static void main(String[] args) {
System.out.println("请选择要进行那种运算:");
System.out.println("输入 + 号表示选择加法");
System.out.println("输入 - 号表示选择减法");
System.out.println("输入 * 号表示选择乘法");
System.out.println("输入 / 号表示选择加法");
System.out.println("输入 e 表示结束程序");
//type 统计用户要接收的运算类型
Scanner input = new Scanner(System.in);
String type = input.next();
//System.out.println(type);
while(!(type.equals("e"))) {
// System.out.println("循环函数");
System.out.println("你选择的运算类型为:"+type);
if(type.equals("+")) {
add(right,fault);
}else if(type.equals("-")) {
sub(right,fault);
}else if(type.equals("*")) {
mul(right,fault);
}else if(type.equals("/")) {
div(right,fault);
}
System.out.println("输入你的选择的运算类型:");
type = input.next();
}
System.out.println("结束程序");
System.out.println("您共答对"+right+"道题"+",答错"+fault+"道题");
}
若用户选择了加法运算,则则跳转到此函数,并产生随机数,用户需输入答案,若用户输入的答案是正确的,显示回答正确,则right+1,否则回答错误,fault+1;即计算用户答对的题数。
//加法函数
public static void add(int x,int y) {
int answer;
int a,b,sum;
//System.out.prntln("加法");
a = randomNum();
b = randomNum();
sum = a + b;
System.out.println("加法运算:a+b="+ a+"+"+b);
System.out.println("请输入答案:");
Scanner input = new Scanner(System.in);
answer = input.nextInt();
if(sum==answer) {
right++;
judgeShow(1);
}else {
fault++;
judgeShow(0);
}
}
//减法函数
public static void sub(int x,int y) {
//System.out.println("减法");
int answer;
int a,b,result;
a = randomNum();
b = randomNum();
result = a - b;
System.out.println("减法运算:a-b="+ a+"-"+b);
System.out.println("请输入答案:");
Scanner input = new Scanner(System.in);
answer = input.nextInt();
if(result==answer) {
right++;
judgeShow(1);
}else {
fault++;
judgeShow(0);
}
}
//乘法函数
public static void mul(int x,int y) {
//System.out.println("乘法");
int answer;
int a,b,result;
a = randomNum();
b = randomNum();
result = a * b;
System.out.println("乘法运算:a*b="+ a+"*"+b);
System.out.println("请输入答案:");
Scanner input = new Scanner(System.in);
answer = input.nextInt();
if(result==answer) {
right++;
judgeShow(1);
}else {
fault++;
judgeShow(0);
}
}
//除法
public static void div(int x,int y) {
//System.out.println("除法");
int answer;
int a,b,result;
a = randomNum();
b = randomNum();
result = a / b;
System.out.println("除法运算:a/b="+ a+"/"+b);
System.out.println("请输入答案:");
Scanner input = new Scanner(System.in);
answer = input.nextInt();
if(result==answer) {
right++;
judgeShow(1);
}else {
fault++;
judgeShow(0);
}
}
//显示正确或错误
public static void judgeShow(int rightOrFault)
{
if(rightOrFault==1) {
System.out.println("回答正确!");
}else if(rightOrFault==0){
System.out.println("回答错误");
}
}
当用户选择运算类型时,系统就产生两个随机数a,b。
//产生随机数
public static int randomNum() {
//产生0~10的随机数
int random = (int) (Math.random()*10);
//产生0~100的随机数
// int random = (int) (Math.random()*100);
System.out.println("产生的随机数为:"+random);
return random;
}
}
如果用户输入e则结束程序,并输出用户所答正确的题数及错误的题数。