软件工程作业01

程序要求:自动生成三十到小学四则运算题,支持整数 和 真分数

程序所用语言:Java

设计思路:1.产生3个随机数num1,num2,num3。num1和num2范围为0-99的整数 num3为0-3的整数

num1,num2用来计算,num3一个用来判断+-*/

     2. if  num3=0 输出num1+num2=

       if  num3=1 输出num1+num2=

           if  num3=2 输出num1+num2=

if  num3=3 如果num2==0 重新随机num2直到不为0  ,然后 输出num1+num2=

3 真分数四则运算同上产生5个随机数 作为分母的不为0

    4.在主函数中调用两个函数循环30次

程序源代码:

package test;

public class Test {
    //整数 四则运算
    public void testZheng(){
        int num1=0,num2=0,num3=0;//num1,num2为两个0-99随机整数 num3为0-3随机整数
        //产生随机数
        num1=(int)(Math.random()*100);
        num2=(int)(Math.random()*100);
        num3=(int)(Math.random()*4);
        if(num3==0)
            System.out.println(num1+"+"+num2+"=");//为+运算
        if(num3==1)
            System.out.println(num1+"-"+num2+"=");//为-运算
        if(num3==2)
            System.out.println(num1+"*"+num2+"=");//为*运算
        if(num3==3)
        {
            if(num2==0)
            {
                while(num2==0) //num2为0 不能为分母
                    num2=(int)(Math.random()*100);
            }
            else
                System.out.println(num1+"/"+num2+"=");//为/运算
        }
    }
    //分数四则运算
    public void testFen(){
        int num1,num2,num3,num4,num5;//num1,num3为分子,num2,num4为分母 num5为0-3随机数
        //产生随机数
        num1=(int)(Math.random()*100);
        num2=(int)(Math.random()*100)+1;
        num3=(int)(Math.random()*100);
        num4=(int)(Math.random()*100)+1;
        num5=(int)(Math.random()*4);
        if(num5==0) //为+运算
            System.out.println(num1+"/"+num2+"+"+num3+"/"+num4+"=");
        if(num5==1)//为-运算
            System.out.println(num1+"/"+num2+"-"+num3+"/"+num4+"=");
        if(num5==2)//为*运算
            System.out.println("("+num1+"/"+num2+")"+"*"+"("+num3+"/"+num4+")"+"=");
        if(num5==3)//为/运算
        {
            if(num3==0)//num3作为分母是 不能为0
            {
                while (num3==0) num3=(int)(Math.random()*100);
            }
            else
                System.out.println("("+num1+"/"+num2+")"+"/"+"("+num3+"/"+num4+")"+"=");
        }

    }
    public static void main(String[] args) {
        Test t1=new Test();
        for(int i=0;i<30;i++)
        {
            t1.testZheng();
            t1.testFen();
        }

    }

运行结果截图(部分):

至于分析一下上课未按时完成原因:一个寒假没练,感觉生疏了。

时间: 2024-11-10 13:34:19

软件工程作业01的相关文章

软件工程作业01课堂练习

import java.util.Scanner; public class Test { public static void main(String[] args) { // TODO Auto-generated method stub Scanner in=new Scanner(System.in); System.out.println("请输入数组的长度:"); int length=in.nextInt(); System.out.println("请输入一个

《Junit》——软件工程作业.vo2

<Junit>--软件工程作业.vo2 一.开发工具选择 我选择Eclipse: 二.编写与测试环节 (1)编写想要测试的Java类 (2)导入Junit (3)编写测试类 单元测试覆盖标准: [x] 语句覆盖:选择合适用例,所有语句被执行一次. [x] 判定覆盖:每个判定至少取一次真.一次假. [x] 条件覆盖:每个条件的各种可能结果至少满足一次. [x] 判定条件覆盖:同时满足判断覆盖和条件覆盖. [x] 条件组合覆盖:所有组合情况都要覆盖一次. 代码如下: package first;

《结对作业2》——软件工程作业.vo5

软件工程作业.vo5 一.题目选择 我们选择题目一: [x] 能够自动生成四则运算练习题 [x] 可以定制题目数量 [x] 用户可以选择运算符 [x] 用户设置最大数(如十以内.百以内等) [x] 用户选择是否有括号.是否有小数 [x] 用户选择输出方式(如输出到文件.打印机等) 二.职责分配 驾驶员--毕振国-博客地址 导航员--杨颢 三.结果展示 1.操作界面示例 2.输出界面示例 ++(此处应有掌声,啪啪啪啪啪啪啪啪啪啪啪啪啪啪啪--)++ 四.代码审查表 代码地址: https://co

2017软件工程作业---第一次

首先自我介绍一下,我叫李传康,江苏徐州人,毕业于吉林建筑大学,专业是计算机科学与技术,为人还算友善,欢迎随时来扰. 一.下面,让我来回答一些问题: (1)回想一下你曾经对计算机专业的畅想 当初你是如何做出选择计算机专业的决定的?你认为过去接触到的课程是否符合你对计算机专业的期待,为什么?你觉得计算机是你喜欢的领域吗,它是你擅长的领域吗?(注:不可以回答 "不是","是".请把这当成以后工作时面试题,需要回答足够长度,提供足够信息,让对方了解你.比如,给出为什么.)

软件工程作业 - Week 1

构建之法读后疑问: 初步的完成构建程序设计思路之后实现过程中发现了问题或者可以优化的地方是立马就改进还是完成之后按照步骤统一进行优化. 覆盖性测试,针对一些永远用不到只是用来预防极为极端的情况下,例如内存不足等,非常难以模拟的代码也需要覆盖吗?如果是成本岂不是很高 所谓敏捷开发在任何时候都适合吗?如果不是得话是什么时候不适合呢 拿一些测试应该由编写的人完成 哪一些应该由其他人完成比较好?有没有具体的划分 封闭开发以及合作开发应该以怎么样的频率交替核实?例如两个人开发进度不同 一个人需要交流 另一

软件工程作业-08

•每个人评价一下大家手头正在使用输入法或者搜索类的软件产品. 从用户界面.记住用户选择.短期刺激.长期使用的好处坏处.不要让用户犯简单的错误. 评价软件: 搜狗拼音 用户界面 这是界面,非常简单,用户可以自定义皮肤,让用户感到非常舒适,比较个性化. 而在使用上搜狗拼音也充分考虑到了用户的使用体验使打字时的界面非常炫酷或者唯美,这点做得非常棒. 记住用户选择 在记住用户选择方面,想必每个输入法都必须做到这一点,而相比而言搜狗做得更好,它会记住用户刚刚输入的子并把它放在第一个选择位置上. 而且搜狗输

第四次软件工程作业

1.敏捷开发是在什么样的背景下产生的?其主要特点有哪些?什么时候选择敏捷开发更恰当,为什么? 敏捷开发产生的背景:从20世纪70年代到90年代提出并使用的许多软件开发方法都试图在软件构思.文档化.开发和测试的过程中强加某种形式的严格性. 在20世纪90年代后期,一些抵制这种严格性的开发人员系统地阐述了他们自己的原则,试图强调灵活性在快速有效的软件生产中所发挥的作用.他们将他 们的思想整理为“敏捷宣言”. 主要特点:1. 工作在小的团队中    2. 团队是跨功能的-包括测试人员,开发人员,文档开

软件工程作业--找水王续

题目要求: •三人行设计了一个灌水论坛.信息学院的学生都喜欢在上面交流灌水,传说在论坛上有一个“水王”,他不但喜欢发帖,还会回复其他ID发的每个帖子.坊间风闻该“水王”发帖数目超过了帖子数目的一半. •如果你有一张当前论坛的帖子(包括回帖)列表,其中帖子的作者的ID也在其中,你能快速的找到这个传说中的水王吗?(参考核心代码) •随着论坛的发展,管理员发现水王没有了,但是统计结果表明,有三个发帖很多的ID.据统计他们的发帖数量超过了1/4,你能从发帖列表中快速找到他们吗? 实现思路: 1.还是将问

软件工程作业(一)

(一)QQ 1.最初使用QQ仅仅是为了和同学联系比较方便,我觉得QQ它的目标不仅仅是为了盈利.的确,QQ有很多功能是需要交钱的,但是它在和别人通信这个最重要的方面是免费的.所以,我个人认为QQ他的目标不仅仅是为了盈利,更重要的是为人们服务. 2.我是从腾讯官网上下载的. 3.通过弹出崩溃窗口来通知用户出行bug.QQ自带检查更功能,有新版本时会自动提醒用户更新. 4.第一,QQ每个一段时间会发布一个新的版本,会添加一些新的功能,像能够添加语音功能.打电话功能等.第二,QQ添加了很多元素,像QQ空