首页 > 代码库 > Android:随机生成算数四则运算简单demo(随机生成2~4组数字,进行加减乘除运算)

Android:随机生成算数四则运算简单demo(随机生成2~4组数字,进行加减乘除运算)

首先创建一个新的Android工程,下面是页面布局:

技术分享

Java代码:

技术分享

我们先来分析一下如何完成的步骤:

1.首先,先完成生成随机数。(包括随机生成几组数字,范围为多少的数字,四则运算符号等);

2.要完成具体逻辑,先指定随机生成几组数字,然后再排列数字和四则运算符号

下面代码随机生成数字的每种情况只写了一种:


private void question() {
java.util.Random random=new java.util.Random();
//先指定随机生成几组数字(2~4);
int temp= random.nextInt(3)+2;

//随机生成(0~3)四个数字分别对应:+,-,×,÷
//如果随机到四组数字,则会有三个运算符
int signal=random.nextInt(4);//第一个运算符
int signal1=random.nextInt(4);//第二个运算符
int signal2=random.nextInt(4);//第三个运算符

//指随机生成的每组数字的数值(1~11)
final int num1=random.nextInt(11)+1;
final int num2=random.nextInt(11)+1;
final int num3=random.nextInt(11)+1;
final int num4=random.nextInt(11)+1;

switch (temp){
case 2://2组数字
switch (signal){
case 0:// +
tv_math.setText(num1+"+"+num2+"=?");
btn_answers.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
tv_math.setText(num1+"+"+num2+"="+(num1+num2));
}
});
break;
case 1:// -
//......
break;
case 2:// ×
//......
break;
case 3:// ÷
//......
break;

}
break;
case 3://3组数字
switch (signal){//第一个运算符
case 0:// +
switch (signal1){//第二个运算符
case 0:// +
tv_math.setText(num1+"+"+num2+"+"+num3+"=?");
btn_answers.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
tv_math.setText(num1+"+"+num2+"+"+num3+"="+(num1+num2+num3));
}
});
break;
//......
}
break;
//......
}
break;
case 4://4组数字
switch (signal){//第一个运算符
case 0:// +
switch (signal1){//第二个运算符
case 0:// +
switch (signal2){//第三个运算符
case 0:// +
tv_math.setText(num1+"+"+num2+"+"+num3+"+"+num4+"=?");
btn_answers.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
tv_math.setText(num1+"+"+num2+"+"+num3+"+"+num4+"="+(num1+num2+num3+num4));
}
});
break;
//......
}
//......
}
break;
//......
}
break;
}
}
 

 下面附上运行结果:

技术分享         技术分享

技术分享        技术分享

技术分享         技术分享

由于知识浅薄,所写代码还显冗杂。由于最后返回的结果是整型,遇到没有整除的时候不会有小数,返回的是整型,还未修改。如有错误还望谅解!

 

Android:随机生成算数四则运算简单demo(随机生成2~4组数字,进行加减乘除运算)