四则运算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 ...
随机推荐
- lavarel模板引擎blade学习
blade 模板学习 特点 主要的两个优点是:模板继承和区块 继承页面布局 布局文件(layout.php) + 详情文件 (page.php) 的组合,即一般到具体的组合.在blade文件之中的体现 ...
- python第三十六课——1.可迭代对象
1.可迭代对象: 满足前提: 只要能被循环操作的对象,就可以可迭代对象 举例: str.list.tuple.set.dict.range.generator... 高效的检测一个对象是否是可迭代对象 ...
- 【高德地图API】从零開始学高德JS API(四)搜索服务——POI搜索|自己主动完毕|输入提示|行政区域|交叉路口|自有数据检索
地图服务.大家能想到哪些?POI搜素,输入提示,地址解析,公交导航,驾车导航,步行导航,道路查询(交叉口),行政区划等等.假设说覆盖物Marker是地图的骨骼,那么服务,就是地图的气血. 有个各种各样 ...
- NOIP模板总结
NOIP模板总结 进考场先打一份缺省源: # include <cstdio> # include <iostream> # include <cstring> # ...
- BZOJ5334:[TJOI2018]数学计算(线段树)
Description 小豆现在有一个数x,初始值为1. 小豆有Q次操作,操作有两种类型: 1 m: x = x * m ,输出 x%mod; 2 pos: x = x / 第pos次操作所乘 ...
- Android 7.0以上版本 系统解决拍照的问题 exposed beyond app through ClipData.Item.getUri()
解决方案1: android.os.FileUriExposedException: file:///storage/emulated/0/ilive/images/photophoto.jpeg e ...
- Android解决自定义View获取不到焦点的情况
引言: 我们在使用Android View或者SurfaceView进行图形绘制,可以绘制各种各样我们喜欢的图形,然后满怀信心的给我们的View加上onTouchEvent.onKeyDown.onK ...
- 所谓的液晶屏驱动IC是单独的IC还是在屏内就集成
所谓的液晶屏驱动IC是单独的IC还是在屏内就集成 时间:2016-12-05 作者:admin 其实无论什么液晶屏,想要正常工作必须包括两个人:玻璃屏+驱动IC:但是现在有一些液晶厂商他们不 ...
- sql语句之随机查询记录和批量插入--基于mysql
本周遇到了好几次数据库方面的问题,一个是上一篇文章提到的因为要修改数据结构引起的在表间复制字段的需求,另一个就是这篇文章要写的:1,从某个数据表中按照某个字段不重复的随机选取几百条记录:2,然后把这些 ...
- 20155206《网络对抗》Web安全基础实践
20155206<网络对抗>Web安全基础实践 实验后问题回答 (1)SQL注入攻击原理,如何防御 攻击原理:SQL注入攻击就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查 ...