JAVA课堂随机出题
一、设计思路
1、利用随机数来确定两个数字。
2、生成0-4的随机数,分别代表 加 减 乘 除。
3、输入的题数利用for循环来出题,每行输出几道题便在循环中加入if语句,当前出题数与每行输出题数求余为0时,换行。
4、利用三个数组存信息,分别存出过的题的两个数字和运算符号。
5、循环开始后,先随机数生成两个数字和运算符号,然后再与数组中的信息进行比对,如果是三个信息都不相等的话进行下一步操作,否则再次生成三个信息。
6、输出相应的信息,每隔相应数量个式子便换行。
二、源代码
package 课堂;
import java.math.*;
import java.util.*;
public class ceshi {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int sum=scanner.nextInt();
int hang=scanner.nextInt();
int[] a= new int[sum];
int[] b= new int[sum];
int[] c= new int[sum];
for(int i=0;i<sum;i++)
{
int x = (int)(Math.random()*99+1);
int y = (int)(Math.random()*99+1);
int choose=(int)(Math.random()*4);
if(choose==1||choose==3)
{
while(x<y)
{
x = (int)(Math.random()*99+1);
y = (int)(Math.random()*99+1);
}
}
if(choose==2)
{ while(x*y>100)
{
x = (int)(Math.random()*99+1);
y = (int)(Math.random()*99+1);
}
}
if(choose==3)
{
while(x%y!=0)
{
x = (int)(Math.random()*99+1);
y = (int)(Math.random()*99+1);
}
}
boolean pd=true;
if(i!=0) {
while(pd) {
for(int cha=0;cha<i;cha++)
{
if(x!=a[i]&&y!=b[i]&&choose!=c[i])
{
pd=false;
break;
}
}
x = (int)(Math.random()*99+1);
y = (int)(Math.random()*99+1);
choose=(int)(Math.random()*4);
if(choose==1||choose==3)
{
while(x<y)
{
x = (int)(Math.random()*99+1);
y = (int)(Math.random()*99+1);
}
}
if(choose==2)
{ while(x*y>100)
{
x = (int)(Math.random()*99+1);
y = (int)(Math.random()*99+1);
}
}
if(choose==3)
{
while(x%y!=0)
{
x = (int)(Math.random()*99+1);
y = (int)(Math.random()*99+1);
}
}
}
}
a[i]=x;
b[i]=y;
c[i]=choose;
if(choose==0)
{
System.out.print((i+1)+"题为:"+x+"+"+y+"= ");
}
if(choose==1)
{
System.out.print((i+1)+"题为:"+x+"-"+y+"= ");
}
if(choose==2)
{
System.out.print((i+1)+"题为:"+x+"*"+y+"= ");
}
if(choose==3)
{
System.out.print((i+1)+"题为:"+x+"/"+y+"= ");
}
if((i+1)%hang==0)
System.out.println();
}
}
}
三、截图
JAVA课堂随机出题的更多相关文章
- 用java写随机出题
import java.io.*; //输入函数包 public class hello{ public static void main(String args[]){ String s=" ...
- Java实现随机出题,10道10以内加减法计算
package com.swift; import java.awt.Toolkit; import java.util.Scanner; public class PlusQuiz { public ...
- java课堂动手动脑及课后实验总结
动手动脑一:枚举 输出结果: false false true SMALL MEDIUM LARGE 分析和总结用法 枚举类型的使用是借助ENUM这样一个类,这个类是JAVA枚举类型的公共基本 ...
- java list随机打乱
java list随机打乱package arrlist; import java.util.ArrayList; import java.util.Collections; import java. ...
- java生成随机序列号
1.java生成随机序列号 String deleteUuid = UUID.randomUUID().toString(); 引用Jar包 //java-uuid-generator-3.1.3.j ...
- java生成随机字符串
学习java comparable特性时候,定义如下Student类,需要需要随机添加学生姓名以及学号和成绩,这是java如何随机生成名字,根据我的查询,我找到目前java库支持两种方法. 1. or ...
- Java课堂笔记(零):内容索引
回想自己学习和使用Java的时间也是很长了.本科期间课堂上浅尝辄止地学习了点皮毛,后来也是搁置不用,未曾深入研究.研究生期间因为项目和实习的原因,基本算是重新拾起Java这门语言,并且接触到了Spri ...
- 20155237 第十一周java课堂程序
20155237 第十一周java课堂程序 内容一:后缀表达式 abcde/-f+ 内容二:实现Linux下dc的功能,计算后缀表达式的值 填充下列代码: import java.util.Scann ...
- 《随机出题软件》&《随机分队软件》源码(Windows API)
1 引言 1.1 编写目的: 为了对院级活动<最强大脑>提供软件支持,同时为了练习使用windows API. 1.2 项目背景: 来自计算机学院学生会信息部指派的任务,规定时间完成软件的 ...
随机推荐
- Vue常用性能优化
Vue常用性能优化 Vue常用的一些优化方式,主要是在构建项目过程需要注意的方面. 编码优化 避免响应所有数据 不要将所有的数据都放到data中,data中的数据都会增加getter和setter,并 ...
- 创建ABP Angular客户端(二)使用模板创建Angular前端
现在我们使用ABP CLI创建Angular客户端. 首先,进入控制台,创建一个空目录,进入这个目录,执行: abp new ZL.Test -u angular 这里我们使用与上一个系列相同的项目名 ...
- Flink SQL Client综合实战
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...
- 聊一聊无锁队列rte_ring
之前用基于dpdk 实现小包快速转发的时候有用到无锁队列!今天就来看看吧!(后续完成了去dpdk化,直接在内核完成快速转发功能) dpdk的无锁队列ring是借鉴了linux内核kfifo无锁队列.r ...
- python之迭代锁与信号量
如果现在需要在多处加锁大于等于2的时候 因为计算机比较笨,当他锁上一把锁的时候又所理一把锁,等他来开锁的时候他不知道用哪把钥匙来开锁, 所以这个时候我们需要把把平常的锁变为迭代锁 eg: import ...
- shell简介及变量的定义查看撤销
1.shell分类及相关软件 图形界面Shell(Graphical User Interface shell 即 GUI shell),如:GNOME.KDE 命令行式Shell(Command ...
- 解密Cookie,这一篇就够了
一.Cookie介绍 因为HTTP协议是无状态的,每次请求都是独立的,服务器端无法判断两次请求是否来自同一个用户,进而也就无法判断用户的登录状态,也不知道用户上一次做了什么.所以Cookie就是用来绕 ...
- (一)廖师兄springboot微信点餐SQL建表脚本
数据库设计 数据库表之间的关系 类目表(product_category) 商品表(product_info) 订单主表(order_master) 订单详情表(order_detail) 卖家信 ...
- 使用Feign发送HTTP请求
使用Feign发送HTTP请求 在往常的 HTTP 调用中,一直都是使用的官方提供的 RestTemplate 来进行远程调用,该调用方式将组装代码冗余到正常业务代码中,不够优雅,因此在接触到 Fei ...
- [原题复现]2018护网杯(WEB)easy_tornado(模板注入)
简介 原题复现: 考察知识点:模板注入 线上平台:https://buuoj.cn(北京联合大学公开的CTF平台) 榆林学院内可使用信安协会内部的CTF训练平台找到此题 [护网杯 2018]eas ...