二柱子出题程序
2021/9/25 20:13:27
本文主要是介绍二柱子出题程序,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
import java.util.Scanner; import java.util.ArrayList; public class copy { public static int suiji(int min, int max) { int S; S = (int)(min+Math.random()*(max-min+1)); return S; } public static int suiji() { int S; S = (int)(1+Math.random()*(999-1+1)); return S; } public static int suijifuhao() { int S; S = (int)(1+Math.random()*(4-1+1)); return S; } public static int suijifuhao1() { int S; S = (int)(1+Math.random()*(2-1+1)); return S; } public static boolean chachong(ArrayList<String> S,String T) { String temp; for(int i = 0;i < S.size();i++) { temp = S.get(i); if(temp.equals(T)) { return false; } } return true; } public static String chutishu(int min,int max)//输出运算数 { int temp = 0; temp = suiji(min, max); String T; T = String.valueOf(temp); return T; } public static String chutifuhao(int l) //输出运算符 { int temp = 0; //符号判别变量 String T; if(l == 1) { temp = suijifuhao(); } else { temp = suijifuhao1(); } switch (temp) { case 1: { T = String.valueOf("+"); break; } case 2: { T = String.valueOf("-"); break; } case 3: { T = String.valueOf("*"); break; } case 4: { T = String.valueOf("/"); break; } default:T = null; } return T; } public static void main(String[] args) { ArrayList<String> S = new ArrayList<>(); Scanner sc = new Scanner(System.in); String T1; String T = null; int a, b; a = 1; b = 1; int temp = 0; int number = 0; System.out.println("请输入您要定制的个数"); number = sc.nextInt(); System.out.println("请输入需要几个数运算"); int n = 0; n = sc.nextInt(); System.out.println("是否有乘除运算,有输入1,无输入0"); int l = 0; l = sc.nextInt(); System.out.println("请输入随机数据的范围 最小值 最大值"); int min = 0; int max = 0; min = sc.nextInt(); max = sc.nextInt(); int p = 0; //随即括号 int j = 0; //括号计数器 int p1 = 0; //随即括号 for(int i = 1;i <= number;i++) { p = suiji(); p1 = suiji(); j = 0; T = " "; for(int m = 1; m <= n+n-1; m++) { if(!(m%2==0)) { T = T + chutishu(min,max); } else { T = T + chutifuhao(l); } if(p % 2==0 && p % 3 == 0 && m % 2 ==0 ) { T1 = String.valueOf("("); T = T + T1; j++; continue; } if(p1 % 2==0 && p1 % 3 == 0 && m % 2 ==0 && j > 0) { T1 = String.valueOf(")"); T = T + T1; j--; } } while(!(j==0)) { T1 = String.valueOf(")"); T = T + T1; j--; } T1 = String.valueOf("="); T = T + T1; if(chachong(S, T)) { S.add(T); } } for(int s = 0;s < S.size();s++) { System.out.println(S.get(s)); } } }
实现功能
1、可定制(数量):输入大的出题数量值;
2、定制操作数的个数;
3、定制是否有乘除法;
4、定制是否有括号(随机加入)
5 、定制数值范围(确定操作数的取值范围)
这篇关于二柱子出题程序的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-06-26结对编程到底难不难?答案在这里
- 2024-06-19《2023版Java工程师》课程升级公告
- 2024-06-15matplotlib作图不显示3D图,怎么办?
- 2024-06-1503-Loki 日志监控
- 2024-06-1504-让LLM理解知识 -Prompt
- 2024-06-05做软件测试需要懂代码吗?
- 2024-06-0514-ShardingSphere的分布式主键实现
- 2024-06-03为什么以及如何要进行架构设计权衡?
- 2024-05-31全网首发第二弹!软考2024年5月《软件设计师》真题+解析+答案!(11-20题)
- 2024-05-31全网首发!软考2024年5月《软件设计师》真题+解析+答案!(21-30题)