20155330 第十一周课堂练习(20170503)

一、代码检查-P74

修改教材P74一行代码NineNineTable.java,让执行结果是个三角形:

码云链接

public class Nine {public static void main(String[] args) {for(int i=1;i<=9;i++){for (int j = 1; j <=i ; j++){System.out.printf("%d*%d=%2d\t",i,j,i*j);}System.out.println();}}
}

二、迷你直流

提交测试截图和码云练习项目链接,实现Linux下dc的功能,计算后缀表达式的值

码云链接

import java.util.StringTokenizer;
import java.util.Stack;public class MyDC {/*** constant for addition symbol*/private final char ADD = '+';/*** constant for subtraction symbol*/private final char SUBTRACT = '-';/*** constant for multiplication symbol*/private final char MULTIPLY = '*';/*** constant for division symbol*/private final char DIVIDE = '/';/*** the stack*/private Stack<Integer> stack;public MyDC() {stack = new Stack<Integer>();}public int evaluate(String expr) {int op1, op2, result = 0;String token;StringTokenizer tokenizer = new StringTokenizer(expr);while (tokenizer.hasMoreTokens()) {token = tokenizer.nextToken();//如果是运算符,调用isOperatorif (isOperator(token)) {op2 = (stack.pop()).intValue();op1 = (stack.pop()).intValue();result = evalSingleOp(token.charAt(0), op1, op2);stack.push(new Integer(result));//从栈中弹出操作数2//从栈中弹出操作数1//根据运算符和两个操作数调用evalSingleOp计算result;//计算result入栈;} elsestack.push(new Integer(Integer.parseInt(token)));//如果是操作数//操作数入栈;}return result;}private boolean isOperator(String token) {return (token.equals("+") || token.equals("-") ||token.equals("*") || token.equals("/"));}private int evalSingleOp(char operation, int op1, int op2) {int result = 0;switch (operation) {case ADD:result = op1 + op2;break;case SUBTRACT:result = op1 - op2;break;case MULTIPLY:result = op1 * op2;break;case DIVIDE:result = op1 / op2;break;}return result;}
}
import java.util.Scanner;
public class MyDCTest {public static void main (String[] args) {String expression, again;int result;try{Scanner in = new Scanner(System.in);do{MyDC evaluator = new MyDC();System.out.println ("Enter a valid postfix expression: ");expression = in.nextLine();result = evaluator.evaluate (expression);System.out.println();System.out.println ("That expression equals " + result);System.out.print ("Evaluate another expression [Y/N]? ");again = in.nextLine();System.out.println();}while (again.equalsIgnoreCase("y"));}catch (Exception IOException){System.out.println("Input exception reported");}}
}

转载于:https://www.cnblogs.com/ashin-kl/p/6804054.html

20155330 第十一周课堂练习(20170503)相关推荐

  1. 20155320 第十一周课堂总结

    20155320 第十一周课堂总结 未及时提交原因: 对代码掌握的不熟练,并且由于起初不知道自己电脑浏览器不支持蓝墨云图片提交,尝试几次后只能把图片传到手机上导致截图没有及时提交 1,.测试题目 1. ...

  2. # 20155224 第十一周 课堂练习《计算后缀表达式的值》

    20155224 第十一周 课堂练习<计算后缀表达式的值> 代码实现 操作数和运算符的入栈与计算如下: //如果是运算符,调用isOperatorif (isOperator(token) ...

  3. 20162316刘诚昊 第十一周学习总结

    # 20162316刘诚昊 2017-2018-2 <Java程序设计>第十一周学习总结 教材学习内容总结 第十九章 图 1.图与树一样,由节点及节点之间的连接组成.分为有向图和无向图. ...

  4. 2019第十一周作业

    这个作业属于哪个教程 C语言程序设计Ⅱ 这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/software-engineering-class1-2018/ ...

  5. “2017面向对象程序设计(Java)第十一周学习总结”存在问题的反馈及教学安排...

    "2017面向对象程序设计(Java)第十一周学习总结"存在问题的反馈及教学安排 1."提出表扬的同学:姜依萍,王雪玲,徐楠,相文君,赵晓 未提交作业的同学:任红强,王瑞 ...

  6. 《Java程序设计》第十一周学习总结

    20175334 <Java程序设计>第十一周学习总结 教材学习内容总结 第十三章 URL类 一个URL对象通常包含最基本的三部分信息:协议.地址.资源. URL对象调用 InputStr ...

  7. 2017-2018-1 20155204 《信息安全系统设计基础》第十一周学习总结

    2017-2018-1 20155204 <信息安全系统设计基础>第十一周学习总结 教材学习内容总结 9.1物理和虚拟地址 物理地址:计算机系统的主存被组织成一个人由M个连续的字节到校的单 ...

  8. # 学号 2017-2018-20172309 《程序设计与数据结构》第十一周学习总结

    ---恢复内容开始--- 学号 2017-2018-20172309 <程序设计与数据结构>第十一周学习总结 教材学习内容总结 第23章 初识Android操作系统:一个多用户的Linux ...

  9. 20155328 《信息安全系统设计基础》第六周 课堂提交补充

    20155328 <信息安全系统设计基础>第六周 课堂提交补充 第六周课上测试-3 编写一个程序w0603,运行以下代码: short int v=-学号后四位; unsigned sho ...

  10. 20162329 2017-2018-1 《程序设计与数据结构》第十一周学习总结

    第十一周学习总结 一.学习目标 了解图的分类 了解图的遍历 常用图算法 图的实现策略 二.学习内容 1.图的分类 ① 无向图: 表示边的顶点对是无序的图被称为无向图 无向图中若任意两个顶点间都有一条边 ...

最新文章

  1. OpenCV中minAreaRect()最小外接矩形 cvBoxPoints()计算矩形顶点 RotatedRect和CvBox2D详解
  2. python tkinter设置窗口大小_Python: tkinter窗口屏幕居中,设置窗口最大,最小尺寸实例...
  3. python基础===Number
  4. Linux网络编程之广播
  5. 【算法系列】一道面试算法题
  6. 达观数据分析平台架构和Hive实践——TODO
  7. 汇编语言--数据传送指令
  8. textarea 高度调整
  9. java程序并行机制_Java语言具有多种优点和特点,下列选项中,______反映了Java程序并行执行机制的特点。A.多线程B.健...
  10. java的static和private_static关键字什么意思?Java中是否可以覆盖一个private或者是static的方法?...
  11. zlib 加密 java_JAVA自带Zlib+base64位压缩加密和解压解密
  12. 系统学习机器学习之随机场(二)--MEMM
  13. Struts框架介绍(重点)
  14. 激情巴布部落畅快一日游
  15. oracle赋权语句详解,Oracle GRANT 赋权详解
  16. 手机号码变成空号导致亚马逊账号登陆两步验证失败的恢复网址及方法
  17. 对待员工的4个阶段:我如何让员工过好自己的一生?
  18. 一键加速去不掉加锁的_vivo手机一键加速的时候,怎样可以不把当前的应用清除?...
  19. TT 的美梦(SPFA)
  20. python+selenium+chrome实现淘宝购物车秒杀自动结算

热门文章

  1. 3、贝叶斯优化相关理论知识
  2. mysql 表复制 速度_提高MySql复制速度
  3. python整数作为条件_Python基本概念介绍
  4. 一文了解attention
  5. navigationBar模块未绑定
  6. caffe的python接口学习(3):训练模型(training)
  7. python连接SQLServer数据库创建数据表同时为每个字段加上对应的中文注释信息
  8. python pickle模块详解
  9. 异常、模块、文件读写
  10. Python3的opencv环境搭建简易教程