四则运算level2
package j;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in=new Scanner (System.in);
System.out.println("题目的数量"); int number=in.nextInt();
System.out.println("数值范围 10 空格 200 ");//先考虑整数的
int up,down;
down=in.nextInt();
up=in.nextInt(); System.out.println("打印时每行的间隔");
int between;
between=in.nextInt();
System.out.println("是否有乘除法Y/N"); String jud1,jud2,jud3;
jud1=in.next();
System.out.println("是否支持小数Y/N");
jud2=in.next();
System.out.println("加减有无负数Y/N");
jud3=in.next(); do{
int flag=2; //算式长度
int shuzi;
float shuzi2;//数字
int signal=0;//数字符号
int b; //运算符号
String Temp=new String("Y");
flag =(int)(Math.random()*4)+2;//算式长度
if(jud2.equalsIgnoreCase(Temp))//是否有小数点
{
if(jud3.equalsIgnoreCase(Temp))//是否有负数
signal=(int) (Math.random()*2); shuzi2=(float)(Math.random()*(up-down))+down;
shuzi2=(int)(shuzi2*1000);
shuzi2=shuzi2/1000;
if(signal<1)
System.out.print(shuzi2);
else
System.out.print("(-"+shuzi2+")");
}
else{
if(jud3.equalsIgnoreCase(Temp))
signal=(int) (Math.random()*2); shuzi=(int)(Math.random()*(up-down)+down);
if(signal<1)
System.out.print(shuzi);
else
System.out.print("(-"+shuzi+")"); }
//以上是第一个数
do{
if(jud1.equalsIgnoreCase(Temp))//是否有乘除
b=(int)(Math.random()*4+1);
else
b=(int)(Math.random()*2+1);
switch(b){
case 1://加
if(jud2.equalsIgnoreCase(Temp))//是否小数点
{
if(jud3.equalsIgnoreCase(Temp))//是否有负数
signal=(int) (Math.random()*2); shuzi2=(float)(Math.random()*(up-down))+down;
shuzi2=(int)(shuzi2*1000);
shuzi2=shuzi2/1000;
if(signal<1)
System.out.print("+"+shuzi2);
else
System.out.print("+"+"(-"+shuzi2+")");
}
else{ if(jud3.equalsIgnoreCase(Temp))//是否有负数
signal=(int) (Math.random()*2); shuzi=(int)(Math.random()*(up-down)+down);
if(signal<1)
System.out.print("+"+shuzi);
else
System.out.print("+"+"(-"+shuzi+")");
}
break;
case 2://减
if(jud2.equalsIgnoreCase(Temp))
{
if(jud3.equalsIgnoreCase(Temp))//是否有负数
signal=(int) (Math.random()*2); shuzi2=(float)(Math.random()*(up-down))+down;
shuzi2=(int)(shuzi2*1000);
shuzi2=shuzi2/1000;
if(signal<1)
System.out.print("-"+shuzi2);
else
System.out.print("-"+"(-"+shuzi2+")");
}
else{
if(jud3.equalsIgnoreCase(Temp))//是否有负数
signal=(int) (Math.random()*2); shuzi=(int)(Math.random()*(up-down)+down);
if(signal<1)
System.out.print("-"+shuzi);
else
System.out.print("-"+"(-"+shuzi+")");
}
break;
case 3://乘
if(jud2.equalsIgnoreCase(Temp))
{
if(jud3.equalsIgnoreCase(Temp))//是否有负数
signal=(int) (Math.random()*2); shuzi2=(float)(Math.random()*(up-down))+down;
shuzi2=(int)(shuzi2*1000);
shuzi2=shuzi2/1000;
if(signal<1)
System.out.print("*"+shuzi2);
else
System.out.print("*"+"(-"+shuzi2+")");
}
else{
if(jud3.equalsIgnoreCase(Temp))//是否有负数
signal=(int) (Math.random()*2);
shuzi=(int)(Math.random()*(up-down)+down);
if(signal<1)
System.out.print("*"+shuzi);
else
System.out.print("*"+"(-"+shuzi+")");
}
break;
case 4://除
if(jud2.equalsIgnoreCase(Temp))
{
if(jud3.equalsIgnoreCase(Temp))//是否有负数
signal=(int) (Math.random()*2); shuzi2=(float)(Math.random()*(up-down))+down;
shuzi2=(int)(shuzi2*1000);
shuzi2=shuzi2/1000;
if(signal<1)
System.out.print("/"+shuzi2);
else
System.out.print("/"+"(-"+shuzi2+")");
}
else{
if(jud3.equalsIgnoreCase(Temp))//是否有负数
signal=(int) (Math.random()*2); shuzi=(int)(Math.random()*(up-down)+down);
if(signal<1)
System.out.print("/"+shuzi);
else
System.out.print("/"+"(-"+shuzi+")");
}
break;
}
flag--;
}while(flag>0);
System.out.print("=");
number--;
for(int k=1;k<=between;k++)
System.out.println();
}while(number>0);
}
}
做了n个简单的功能,但是括号君没头绪,所以卡代码了。小小的升级了一下----
求指点……
四则运算level2的更多相关文章
- 王译潇20162314 实验报告三plus结对编程四则运算第一阶段
北京电子科技学院BESTI实验报告 课程:程序设计与数据结构 班级: 1623 姓名: 王译潇 学号:20162314 指导教师:娄佳鹏老师.王志强老师 实验日期:2017年5月12号 实验密级: 非 ...
- 介绍一款原创的四则运算算式生成器:CalculateIt2
家里小朋友读一年级了,最近每天都有一些10以内的加减法口算练习,作为程序员爸爸,自然也是想办法能够偷懒,让电脑出题,给小朋友做些练习.于是,自己在业余时间开发了一个四则运算算式生成器,名为:Calcu ...
- 作业二:个人编程项目——编写一个能自动生成小学四则运算题目的程序
1. 编写一个能自动生成小学四则运算题目的程序.(10分) 基本要求: 除了整数以外,还能支持真分数的四则运算. 对实现的功能进行描述,并且对实现结果要求截图. 本题发一篇随笔,内容包括: 题 ...
- 四则运算appNABCD模型
团队: 郭志豪:http://www.cnblogs.com/gzh13692021053/ 杨子健:http://www.cnblogs.com/yzj666/ 刘森松:http://www.cnb ...
- 第一章-第一题(小学生四则运算)--By郭青云
1.项目需求 a) 除了整数以外,还要支持真分数的四则运算. (例如: 1/6 + 1/8 = 7/24) b) 让程序能接受用户输入答案,并判定对错. 最后给出总共 对/错 的数量. c) 逐步扩 ...
- 一个简易的四则运算单元...(15.12.15 BUG更新)
网上找的, 没有作者信息, 只能在这里感谢一下了, 支持标准写法的四则运算 --2015-12-15 修改了一个内存泄漏的BUG - Pop方法没有释放申请的内存 unit Base.Calculat ...
- 利用ANTLR4实现一个简单的四则运算计算器
利用ANTLR4实现一个简单的四则运算计算器 ANTLR4介绍 ANTLR能够自动地帮助你完成词法分析和语法分析的工作, 免去了手写去写词法分析器和语法分析器的麻烦 它是基于LL(k)的, 以递归下降 ...
- 【实践】js实现简易的四则运算计算器
最近看了一个大神推荐的某公司面试程序员的js 面试题,题目是用js 做一个计算器于是跟着大神的思想自己做了一下 ps:功能还没有完善好毕竟自己还是一只菜鸟还在不断学习中. 闲话不多说先上css代码 & ...
- HDU 5938 Four Operations(四则运算)
p.MsoNormal { margin: 0pt; margin-bottom: .0001pt; text-align: justify; font-family: Calibri; font-s ...
随机推荐
- 分享-结合demo讲解JS引擎工作原理
代码如下: var x = 1; function A(y){ var x = 2; function B(z){ console.log(x+y+z); } return B; } var C = ...
- CSS3的新增选择器
一.兄弟选择器:选择E元素所有兄弟元素F. <style> p~p{ color:#f00;} </style> </head> <body> < ...
- 关于军训的模拟赛-R2
终于我也参加了一场有R1 && R2的比赛呢. 点击此处查看R1 因为种种原因,老师认为上次的考试没有体现我们的真实水平,于是举办了毒瘤R2,其实也不是非常毒瘤,还是一贯的风格. T1 ...
- mysql用户创建与授权
一. 创建用户 命令: CREATE USER 'username'@'host' IDENTIFIED BY 'password'; 说明: username:你将创建的用户名 host:指定该用户 ...
- 竟然是它:# vi /etc/resolv.conf
有数据库主机: 前端tomcat应用连接慢,开发人员本地pl/sql连接也超慢: 检查了系统i/o ,nethogs,top,检查了数据listener.ora,awr,wait_event,sql ...
- OpenCV——边缘检测(sobel算子、Laplacian算子、scharr滤波器)
#include <opencv2/opencv.hpp> #include <iostream> using namespace cv; using namespace st ...
- FreeBSD 12.0 版发布
FreeBSD 是一个自由且开源的类 Unix 操作系统,是 BSD Unix 的直系继承者.起始于 1993 年,FreeBSD 拥有悠久的历史与诸多衍生版本.其饱经考验,是最广泛应用的开源 BSD ...
- CentOS中安装Azkaban 2.5
必备软件 yum install git -y 单机安装步骤 git clone https://github.com/azkaban/azkaban.git cd azkaban; ./gradle ...
- mysql linux 安装卸载
mysql安装包官网https://dev.mysql.com/downloads/mysql/5.7.html#downloads wget https://dev.mysql.com/get/Do ...
- 蓝桥杯 历届试题 约数倍数选卡片 (经典数论+DFS)
闲暇时,福尔摩斯和华生玩一个游戏: 在N张卡片上写有N个整数.两人轮流拿走一张卡片.要求下一个人拿的数字一定是前一个人拿的数字的约数或倍数.例如,某次福尔摩斯拿走的卡片上写着数字“6”,则接下来华生可 ...