标签:纠正 错误 int System else getDo 测试 print out
错误纠正
这次来一篇简单的四则运算程序吧!
四则运算程序
//Main.java
import java.util.Random;
import java.util.Scanner;
public class Main{
//主界面
public static void main(String[] args)
{
while(true) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入你想要打印的题目数量:");
int sum = sc.nextInt();
System.out.println("请输入操作数的个数:");
int count = sc.nextInt();
System.out.println("请输入操作数的范围:");
int ff = sc.nextInt();
System.out.println("请输入是否有乘除法?1、有 2、没有");
int x = sc.nextInt();
System.out.println("请输入是否添加括号?1、是 2、否");
int y = sc.nextInt();
if (sum < 1 || count < 2 || ff < 0 || (x != 1 && x != 0) || (y != 1 && y != 0)) {
System.out.println("输入错误,请重新输入!");
} else {
getAnswer(sum, count, ff, x, y);
System.exit(-1);
}
}
}
//操作完成界面
public static void getAnswer(int sum,int count,int ff,int x,int y)
{
Random random = new Random();
int[] admin = new int[sum+10000];
int[] getDo = new int[count*2-1];
int flag = 0;
for(int j = 0;j < sum - flag;j++)
{
boolean ss = true;
int left = random.nextInt(count - 1);
int right = random.nextInt(count - left) + left + 1;
for(int i = 0;i < count*2-1 ;i++)
{
getDo[i] = random.nextInt(ff);
}
for(int t = 0; t < count;t++)
{
admin[j] += getDo[t*2]*t;
}
for(int k = 0; k < j ;k++)
{
if(admin[k] == admin[j])
{
sum++;
flag++;
ss = false;
break;
}
}
if(ss)
{
for(int t = 0;t < count * 2 - 1 ;t++)
{
if(y == 1)
{
if( 2*left == t)
System.out.print("(");
if(t%2 == 0 && t!= count*2-2)
{
System.out.print(getDo[t] + " ");
if( 2*right - 2 == t) //2*iNumd - 1 == t
System.out.print(")");
}
else if(t == count*2-2)
{
System.out.print(getDo[t]);
if( 2*right - 2 == t)
System.out.print(")");
System.out.println(" =");
}
else if(t % 2 == 1)
{
if(x == 1)
{
if(getDo[t]%4 == 1)
{
System.out.print("+ ");
}
else if(getDo[t]%4 == 2)
{
System.out.print("- ");
}
else if(getDo[t]%4 == 3)
{
System.out.print("* ");
}
else if(getDo[t]%4 == 0)
{
System.out.print("/ ");
}
}
else if(x == 0)
{
if(getDo[t]%2 == 1)
{
System.out.print("+ ");
}
else if(getDo[t]%2 == 0)
{
System.out.print("- ");
}
}
}
}
else
{
if(t%2 == 0 && t!= count*2-2)
{
System.out.print(getDo[t] + " ");
}
else if(t == count*2-2)
{
System.out.println(getDo[t] + " =");
if( 2*right - 1 == t)
System.out.print(")");
}
else if(t % 2 == 1)
{
if(x == 1)
{
if(getDo[t]%4 == 1)
{
System.out.print("+ ");
}
else if(getDo[t]%4 == 2)
{
System.out.print("- ");
}
else if(getDo[t]%4 == 3)
{
System.out.print("* ");
}
else if(getDo[t]%4 == 0)
{
System.out.print("/ ");
}
}
else if(x == 0)
{
if(getDo[t]%2 == 1)
{
System.out.print("+ ");
}
else if(getDo[t]%2 == 0)
{
System.out.print("- ");
}
}
}
}
}
}
}
}
}
标签:纠正,错误,int,System,else,getDo,测试,print,out 来源: https://www.cnblogs.com/liuzijin/p/16672861.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。