zoukankan      html  css  js  c++  java
  • 面向对象程序设计第二次作业

    Github地址:https://github.com/tinghaishuo/object-oriented/tree/master/1001.A%2BB Format(20)

    题目:1001. A+B Format (20)

     Calculate a + b and output the sum in standard format -- that is, the digits must be separated into groups of three by commas (unless there are less than         four digits).
    
    • Input:Each input file contains one test case. Each case contains a pair of integers a and b where -1000000 <= a, b <= 1000000. The numbers are separated by a space.
    • Output:For each test case, you should output the sum of a and b in one line. The sum must be written in the standard format.

    解题思路:

    • 输出须为三组数据由逗号分隔,则需要再定义四个数,一个数为相加后的结果,另外三个数分别表示这三组数据。
    • 本次需要用到循环结构以及需要注意printf的输出格式。
    • 对于循环体的设计,先判断输出是否需要三组数据表示,否则再进一步判断是否需要2组数据表示,若否则可直接输出结果。

    编码过程中调试与上线测试(提交代码)后的bug发现与修改过程

    编码过程的调试

    • 编译并无发现错误,但在运行过程中发现若输出结果为负数时,每一组数据前均会带上一个负号。

    • 根据发现的错误,进行了修改,取绝对值。当和为负数时:若输出是一组数据,则可直接输出;若输出是两组数据,从左往右,第二组数据取绝对值再输出;若输出是三组数据,从左往右第二、三组数据取绝对值再输出。

    • 再次编译运行,发现无误,提交。

    上线测试(提交代码)

    • 第一次:
      评测结果为0分,有点百思不得其解。看了错误,是绝对值的使用错误
      本想在绝对值的问题上进行修改,后转念一想,若先将负号输出,再对剩下的数字进行处理,更加简便。于是重新进行了修改。

    • 第二次:
      第二次测评只有16分,说明仍存在一些细节上的错误。
      于是我重新找了几组数据检测,发现了一个小细节。
      由于自己的粗心大意,导致了这个错误,再次修改。

    • 第三次:
      终于,正确了。

    小结:

    1拿到一个题目后,应该从多方面想解法,不能一股脑想什么就写什么,多思考思考会想到更多更加简便的方法。
    2心思要缜密。在提交前要多拿几组数据测试,避免犯不该犯的错误。
    3发现错误的过程不断进行自我反省自我改正,直到全对。这个过程收益颇丰。才入门技术不足,常常犯许多错误。正视这些错误,多思考,虚心请教同学以及前辈,不断学习,取得进步。

  • 相关阅读:
    Mysql中自增字段(AUTO_INCREMENT)的一些常识
    MyBatis动态传入表名
    Linux创建连接命令 ln -s创建软连接
    leaflet 使用turfjs实现前端自定义插值
    java后台@RequestBody和@RequestParam
    在jeecg-boot中密码的使用
    在jeecg-boot中使用代码生成器&mybatis-plus
    Pyppeteer 爬取实战
    【转】GitHub不再支持密码验证解决方案
    【转】pyppeteer+chromium手动安装Mac版本
  • 原文地址:https://www.cnblogs.com/s38455/p/5166838.html
Copyright © 2011-2022 走看看