四则运算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 ...
随机推荐
- Django基础与组件
第一章:Django系列之web应用与http协议 第二章:基于wsgiref模块DIY一个web框架 第三章:Django下载与简介 第四章:url控制系统 第五章:视图 第六章:Django模板语 ...
- 抽象类、final关键字、多态
1.1 抽象类 1.1.1 抽象类概念 C extends B,B extends A,在继承过程中,形成一个继承金字塔,位于金字塔底部的类越来越具体(强大),位于塔顶的越来越抽象(简单). 例如:人 ...
- Scrapy实践----获取天气信息
scrapy是一个非常好用的爬虫框架,它是基于Twisted开发的,Twisted又是一个异步网络框架,既然它是异步的,那么执行起来肯定会很快,所以scrapy的执行速度也不会慢的! 如果你还没没有学 ...
- 三、并行编程 - Task同步机制。TreadLocal类、Lock、Interlocked、Synchronization、ConcurrentQueue以及Barrier等
在并行计算中,不可避免的会碰到多个任务共享变量,实例,集合.虽然task自带了两个方法:task.ContinueWith()和Task.Factory.ContinueWhenAll()来实现任务串 ...
- Zookeeper入门(二)之基础
在深入了解ZooKeeper的运作之前,让我们来看看ZooKeeper的基本概念.本文主要包含如下内容:1.Architecture(架构)2.Hierarchical namespace(层次命名空 ...
- jqgrid 分页时,清空原表格数据加载返回的新数据
由于,我们是动态分页,分页后的数据是在触发分页后动态加载而来.如何使jqgrid清空原数据而加载新数据? 1)调用jqgrid的 clearGridData 方法清空表格数据 2)调用jqgrid的 ...
- jQueryMobile的按钮样式
好吧,已经学了jQueryMobile一年了,今天心血来潮,想要写一篇关于jQueryMobile的博客文章,记得去年暑假在公司实习jQueryMobile,想一想真是怀念当时还是菜鸟的自己,年轻就是 ...
- SAP查询TABLE对应的文本表
SAP 取数时,通常配置项,需要取对应的文本描述,一般在配置表后加个T,就可以找到描述对应的表名. 但有时也有不符合这个规则的,例如生产订单类型数据表 T003O. 表名加T后并不存T003OT. 这 ...
- springboot整合redis——redisTemplate的使用
一.概述 相关redis的概述,参见Nosql章节 redisTemplate的介绍,参考:http://blog.csdn.net/ruby_one/article/details/79141940 ...
- 20155331《网络对抗》 Exp9 Web安全基础
20155331<网络对抗> Exp9 Web安全基础 实验过程 WebGoat 在终端中输入java -jar webgoat-container-7.0.1-war-exec.jar开 ...