软件构造实验一

 

  1. 实验过程

请仔细对照实验手册,针对四个问题中的每一项任务,在下面各节中记录你的实验过程、阐述你的设计思路和问题求解思路,可辅之以示意图或关键源代码加以说明(但无需把你的源代码全部粘贴过来!)。

为了条理清晰,可根据需要在各节增加三级标题。

    1. Magic Squares

该任务先让我知道了幻方的概念,任务要求我判断一个矩阵是否是幻方,接下来是让我能初步了解构造幻方的方法。该任务涉及到很多文件读写操作,还有一些异常情况的处理。

      1. isLegalMagicSquare()

按步骤给出你的设计和实现思路/过程/结果。

本函数以文件为输入,布尔值为输出,判断文件中存储的矩阵是否是幻方。

首先是用了BufferedReader创建对象,然后用readLine()方法读取字符串。并可以在用readLine()时记录矩阵行数,方便后面做比较:

接下来便是先判断一些特殊情况:不符合幻方的定义、矩阵中存在负数或者小数、数字之间没有用\t分隔。

运用split()将一行字符以\t分开放到数组里,并用n记录一行的长度,即一行有几个数。如果行列数不等,说明不符合定义。

关于存在负数和小数,用了contains()判断是否出现过”.”或者”-”,如果有,说明出现了负数或小数。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值