博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
20165337第五周实验报告
阅读量:5234 次
发布时间:2019-06-14

本文共 2607 字,大约阅读时间需要 8 分钟。

一.命令行下Java程序开发

1.输入mkdir指令建立文件夹。
2.输入javac -d . 目标文件夹/类名.java编译文件
3.输入javac 包名.类名运行文件
程序运行结果如下:
1296836-20180401174329056-478626277.png

二.使用IDEA调试程序

1.编写程序及运行
1296836-20180401155755822-334586575.png

2.依次向下单步调试

1296836-20180401160013835-1949946007.png

3.在循环内调试

1296836-20180401160115234-410392522.png

4.调试过程中,语句只运行一次

1296836-20180401160232189-734985718.png

1296836-20180401160255393-1223801545.png

三.编写并且调试运行程序

1.实验题目:实现简单四则运算(能支持分数,加减乘除,支持括号)
2.代码编写:

import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.ArrayList;public class hellojdk{    public static void main(String[] args){        BufferedReader reader=null;        InputStreamReader inputStreamReader=null;        try{            System.out.println("请输入表达式:或直接输入#结束运算!");            inputStreamReader=new InputStreamReader(System.in);            reader=new BufferedReader(inputStreamReader);            String str=reader.readLine();            while(!str.equals("#")){                System.out.println("运算结果为:"+opt(str)+"");                System.out.println("请输入表达式:或直接输入#结束运算!");                str=reader.readLine();            }        }catch(Exception e){            e.printStackTrace();        }        if(reader!=null){            try {                reader.close();            } catch (IOException e) {                e.printStackTrace();            }        }    }    public static float opt(String s) throws Exception{        if(s == null || "".equals(s.trim())) {            return 0f;        }        int a1=s.indexOf("+");        int a2=s.indexOf("-");        int a3=s.indexOf("*");        int a4=s.indexOf("/");        int a5=s.indexOf("(");        if(a1==-1&&a2==-1&&a3==-1&&a4==-1){            if(s.trim()==null||"".equals(s.trim())){                throw new Exception("operate error");            }            return Float.parseFloat(s.trim());        }        if(a5!=-1){            int a6=s.indexOf(")");            if(a6==-1){                throw new Exception("括号不匹配");            }else{                float f=opt(s.substring(a5+1,a6).trim());                s=s.replace(s.substring(a5,a6+1), String.valueOf(f));                return opt(s);            }        }        if(a1!=-1){            return opt(s.substring(0,a1))+opt(s.substring(a1+1,s.length()));        }        if(a2!=-1){            return opt(s.substring(0,a2))-opt(s.substring(a2+1,s.length()));        }        if(a3!=-1){            return opt(s.substring(0,a3))*opt(s.substring(a3+1,s.length()));        }        if(a4!=-1){            return opt(s.substring(0,a4))/opt(s.substring(a4+1,s.length()));        }        return Integer.parseInt(s.trim());    }}
3.代码调试分别对加减,乘除,混合运算以及括号优先级的运算测试以及负数结果的测试。

1296836-20180401161447419-2136276707.png

1296836-20180401161455864-1639868869.png

代码上传

步骤 耗时 百分比
需求分析 30分钟 11.1%
设计 3小时 66.7%
代码实现 10分钟 3.7%
测试 30分钟 11.1%
分析总结 20分钟 7.4%

转载于:https://www.cnblogs.com/y963976867/p/8687023.html

你可能感兴趣的文章
[转]室友靠打游戏拿30万offer,秘密竟然是……
查看>>
linux下python2.7.x版本安装
查看>>
Laravel5.5 GraphQL 为应用程序构建API
查看>>
IOS框架和服务
查看>>
[转]快速排序 挖坑讲解方法
查看>>
[转]STL之list容器详解
查看>>
python 创建虚拟环境时报错OSError, setuptools下载失败
查看>>
BZOJ 1005 [HNOI2008]明明的烦恼 ★(Prufer数列)
查看>>
POSIX 线程 – pthread_sigmask
查看>>
基于octree的空间划分及搜索操作
查看>>
Redis--初识Redis
查看>>
[ZJOI2005]午餐 (贪心,动态规划)
查看>>
RAC 修改 DB 实例名 步骤
查看>>
ubuntu删除残留的软件文件
查看>>
uchome 后台添加入口操作
查看>>
ssh中Hibernate懒加载,session问题的学习与理解
查看>>
HTML学习笔记
查看>>
perl学习之:read
查看>>
TCL之表达式
查看>>
POJ 2828 Buy Tickets
查看>>