一个小学生题库生成器
2012-12-14 12:16
211 查看
public static void main(String[] args) {
Do(3, 20);
}
/*
* n,N项式
* m,M以内的加减法
*/
public static void Do(int n, int m)
{
int num = 2*n-1; // 随机数与符号都是随机生成
HashMap<String, String> hs = new HashMap<String, String>();
while(true) {
int[] arr=new int[num];
for (int i=0; i<num; i++){
if (i%2==0){
arr[i] = (int)(Math.random()*20);
}else{
arr[i] = (int)(Math.random()*20)%2;
}
}
int result = arr[0]; // 存放每两项相减的结果
boolean bOk = true;
for (int i=1; i<n; i++)
{
if (arr[i*2-1] == 0)
result += arr[i*2];
else
result -= arr[i*2];
if (result <0 || result > m)
{
bOk = false;
break;
}
}
if (bOk)
{
StringBuffer sb = new StringBuffer();
for (int i=0; i<num; i++)
{
if (i%2==0)
{
sb.append(arr[i]);
}else{
if (arr[i]%2 == 0)
sb.append("+");
else
sb.append("-");
}
}
if (!hs.containsKey(sb.toString()))
{
hs.put(sb.toString(), "");
System.out.println(sb.toString()+"=" + result);
}
if (hs.size() == 100 ) break;
}
}
}
Do(3, 20);
}
/*
* n,N项式
* m,M以内的加减法
*/
public static void Do(int n, int m)
{
int num = 2*n-1; // 随机数与符号都是随机生成
HashMap<String, String> hs = new HashMap<String, String>();
while(true) {
int[] arr=new int[num];
for (int i=0; i<num; i++){
if (i%2==0){
arr[i] = (int)(Math.random()*20);
}else{
arr[i] = (int)(Math.random()*20)%2;
}
}
int result = arr[0]; // 存放每两项相减的结果
boolean bOk = true;
for (int i=1; i<n; i++)
{
if (arr[i*2-1] == 0)
result += arr[i*2];
else
result -= arr[i*2];
if (result <0 || result > m)
{
bOk = false;
break;
}
}
if (bOk)
{
StringBuffer sb = new StringBuffer();
for (int i=0; i<num; i++)
{
if (i%2==0)
{
sb.append(arr[i]);
}else{
if (arr[i]%2 == 0)
sb.append("+");
else
sb.append("-");
}
}
if (!hs.containsKey(sb.toString()))
{
hs.put(sb.toString(), "");
System.out.println(sb.toString()+"=" + result);
}
if (hs.size() == 100 ) break;
}
}
}
相关文章推荐
- 一个消费者与生产者的生成器并行模型
- css框架 一个可控性强的css+xhtml页面布局生成器。
- 11-16做一个连接字符串生成器
- obj-c编程15[Cocoa实例01]:一个会发声的随机数生成器
- [知识竞赛策划方案][图]何用PPT制作知识竞赛所需要的题库?作为一个普通的单位,由于不具备电视台专用的比赛平台,如果要搞一场极致专业的知识竞赛?同时花钱最少?
- 做了一个quartz用到的cron在线生成器
- 怎样从0开始搭建一个测试框架_10——数据生成器
- 求一个能够 自动生成小学生数学练习题目 的Java程序。
- Fragment 访问本地服务器,有三个fragment 这是其中一个的页面 三个fragmen都一样 因为我有一些朋友问这里面怎么写,索性就发表出来你们看下,大神勿喷。小学生作品!
- cmd脚本写一个小学生计算习题
- 编写一个springboot start 类型的分布式全局id生成器
- 最近发现一个随机数生成器网站
- 设想:一个基于ssh架构的信息系统生成器
- 一个简单的 ASP.NET 图片生成器
- 到年底的时候,我准备把一个基金挣的钱用来捐助一个小学生。
- 完成一个验证码生成器,要求能够随机生成0~9,a~z,A~Z之间长度为4位的验证码,并完成一个验证过程
- 用java编写一个BrainF*k生成器
- 做了一个quartz用到的cron在线生成器
- 如何快速开发一个支持高效、高并发的分布式ID生成器(一)
- 一个题库