2017-2018-2 1723 『Java程序设计』课程

结对编程练习-四则运算-中坚阶段

如今的编写,进入了一段时间的中坚阶段,小伙伴的思路虽然很一致,但是总是存在着一定问题,这就造成了我们中坚阶段的很长一段时间的停止阶段;

加油!

结对编程的战友

20172316 赵乾宸:负责对于整数出题的编程;

20172319 唐才铭:负责对于分数出题的编程;

我:20172329 王文彬:负责对于计算和题目去重的编写;

测试为分别进行测试,最后由赵乾宸进行集体测试。

每个人都是驾驶员,是彼此的引航员,团队,分工明确是一部分,但是集体力量的结晶才是最伟大的!!!

相关过程的代码

生成题目的相关代码

import java.util.Scanner;

public class Compute2 {
protected int a;
protected String s1 = "", str = ""; public Compute2() {
Scanner scan = new Scanner(System.in);
System.out.println("几级运算?");
int n = scan.nextInt();
Scanner qqq = new Scanner(System.in);
/* System.out.println("生成几个题目?");
int q = qqq.nextInt();
Object[] p = new Object[q] ;
for (int index = 0; index < q; index++) {*/
int a1 = (int) (Math.random() * 100);
int a2 = (int) (Math.random() * 100);
int t1 = (int) (Math.random() * 4);
switch (t1) {
case 0: {
s1 = " + ";
break;
}
case 1: {
s1 = " - ";
break;
}
case 2: {
s1 = " * ";
break;
}
case 3: {
s1 = " / ";
}
}
for (int i = 0; i < n - 1; i++) {
int a = (int) (Math.random() * 100);
int t = (int) (Math.random() * 4);
String s = "";
switch (t) {
case 0: {
s = " + ";
break;
}
case 1: {
s = " - ";
break;
}
case 2: {
s = " * ";
break;
}
case 3: {
s = " / ";
}
}
str += a + s; } str += a1 + s1 + a2; }
public String getFormula () {
return str;
}
}

测试:

计算的相关代码

关键代码解释

import java.util.Scanner;

public class Compute2 {
protected int a;
protected String s1 = "", str = ""; public Compute2() {
Scanner scan = new Scanner(System.in);
System.out.println("几级运算?");
int n = scan.nextInt();
Scanner qqq = new Scanner(System.in);
/* System.out.println("生成几个题目?");
int q = qqq.nextInt();
Object[] p = new Object[q] ;
for (int index = 0; index < q; index++) {*/
int a1 = (int) (Math.random() * 100);
int a2 = (int) (Math.random() * 100);
int t1 = (int) (Math.random() * 4);
switch (t1) {
case 0: {
s1 = " + ";
break;
}
case 1: {
s1 = " - ";
break;
}
case 2: {
s1 = " * ";
break;
}
case 3: {
s1 = " / ";
}
}
for (int i = 0; i < n - 1; i++) {
int a = (int) (Math.random() * 100);
int t = (int) (Math.random() * 4);
String s = "";
switch (t) {
case 0: {
s = " + ";
break;
}
case 1: {
s = " - ";
break;
}
case 2: {
s = " * ";
break;
}
case 3: {
s = " / ";
}
}
str += a + s; } str += a1 + s1 + a2; }
public String getFormula () {
return str;
}
}
  • 出题时选择了“swich语句“,因为,这样可以进行人机互动,一方面可以实现我们所需要的输入一个阶数,可以完成对于该阶数的出题;
  • 其次,利用了累加“+=”进行输出,就会产生按照我们需求的题目;

实验中所遇到的问题

  • 问题1:在做好计算类以后,在测试的时候,发现结果是0?

  • 问题1解决方案:

    因为在计算类当中编写的时候没有注意对象的运用,使得在一个计算类的方法中重复利用了多个对象,使得彼此相互关联,之后,在测试类中调用时,就发生了调不出来的状况。

本来应该是这个样子:

但是因为方法直接有点问题,一开始一直提示,按照提示将方法都设置成为了静态,之后再测试类中再次调用的时候就出现了问题,现在一直在解决于这个问题;

2017-2018-2 1723 『Java程序设计』课程 结对编程练习-四则运算-中坚阶段的更多相关文章

  1. 2017-2018-2 1723 『Java程序设计』课程 结对编程练习-四则运算-准备阶段

    2017-2018-2 1723 『Java程序设计』课程 结对编程练习-四则运算-准备阶段 在一个人孤身奋斗了将近半个学期以后,终于迎来的我们的第一次团队协作共同编码,也就是,我们的第一个结对编程练 ...

  2. 2017-2018-2 1723 『Java程序设计』课程 结对编程练习-四则运算-最后阶段

    2017-2018-2 1723 『Java程序设计』课程 结对编程练习-四则运算-最后阶段 最后的一周,时间越来越紧张,因为之前的拖沓和一些事情的耽误,导致了如今的紧张,这一周应该是我们小组效率最高 ...

  3. 2017-2018-2 1723 『Java程序设计』课程 结对编程练习_四则运算第三周总结

    相关测试过程截图 测试了由中缀表达式转后缀表达式的Junit测试,分别进行了整数的和分数的,测试成功截图 由于生成问题和计算问题中,问题都是随机产生的,暂时不会进行Junit测试,故没有进行,但应是正 ...

  4. 2017-2018-2 1723 『Java程序设计』课程 结对编程练习_四则运算 第二周

    一.结对对象 姓名:侯泽洋 学号:20172308 担任角色:驾驶员(侯泽洋) 伙伴第二周博客地址 二.本周内容 (一)继续编写上周未完成代码 1.本周继续编写代码,使代码支持分数类计算 2.相关过程 ...

  5. 2017-2018-2 1723 『Java程序设计』课程 结对编程练习_四则运算

    一.结对对象 姓名:侯泽洋 学号:20172308 担任角色:驾驶员(侯泽洋) 伙伴第一周博客地址 二.本周内容 1.程序需求 (1).自动生成题目 可独立使用(能实现自己编写测试类单独生成题目的功能 ...

  6. 2017-2018-2 20172323 『Java程序设计』课程 结对编程练习_四则运算

    结对编程的好丽友 - 20172323 王禹涵:中缀转后缀 - 20172314 方艺雯:后缀表达式的计算 - 20172305 谭鑫:中缀表达式的输出 需求分析 能随机生成由使用者确定的任意多道四则 ...

  7. 2017-2018-2 165X 『Java程序设计』课程 结对编程练习_四则运算

    2017-2018-2 165X 『Java程序设计』课程 结对编程练习_四则运算 经过第一阶段的学习,同学们已经熟悉了这门语言基本的用法.在一次又一次对着电脑编写并提交代码,进行练习的时候,有没有觉 ...

  8. 2017-2018-2 20172310『Java程序设计』课程 结对编程练习_四则运算_第二周

    2017-2018-2 20172310『Java程序设计』课程 结对编程练习_四则运算_第二周 博客要求 组内同学需各自发表博客 博客中需包含以下内容: 相关过程截图 关键代码解释 遇到的困难及解决 ...

  9. 2017-2018-20172309 『Java程序设计』课程 结对编程练习_四则运算_第三周

    2017-2018-20172309 『Java程序设计』课程 结对编程练习_四则运算 组队成员: 仇夏 学号: 20172310 博客地址: @王志伟 四则运算第一周博客 @仇夏四则运算第一周博客 ...

随机推荐

  1. flex 自适应

    flex-grow.flex-shrink.flex-basis这三个属性的作用是:在flex布局中,父元素在不同宽度下,子元素是如何分配父元素的空间的. 其中,这三个属性都是在子元素上设置的. 注: ...

  2. PHPCMS v9 手机端栏目绑定模板

    phpcms的手机端,模块是有了,但是有些地方用的还不是很舒服,其中移动端栏目无法绑定模板就不是很方便.如图,所有的栏目绑定的模板是固定的. 这次咱们就来处理下,移动端如何设置相应的模板.这里说是设置 ...

  3. C语言学习记录_2019.02.09

    打印字符串:%s--------printf("%s","abcd"); 打印字符串数组中某一位:%c--------printf("%c" ...

  4. 关于postgresql触发器的总结(lab作业系列)

    上题: In this tutorial you will create a stored procedure and triggers to check a complex constraint. ...

  5. 2017-2018-1 20155239 《信息安全系统设计基础》第五周学习总结+mybash的实现

    2017-2018-1 20155239 <信息安全系统设计基础>第五周学习总结+mybash的实现 mybash的实现 使用fork,exec,wait实现mybash 写出伪代码,产品 ...

  6. PostgreSQL调整内存与IO的参数说明

    磨砺技术珠矶,践行数据之道,追求卓越价值 回到上一级页面:PostgreSQL内部结构与源代码研究索引页    回到顶级页面:PostgreSQL索引页 [作者:高健@博客园 luckyjackgao ...

  7. 谷歌大脑科学家 Caffe缔造者 贾扬清 微信讲座完整版

    谷歌大脑科学家 Caffe缔造者 贾扬清 微信讲座完整版 一.讲座正文: 大家好!我是贾扬清237,目前在Google Brain83,今天有幸受雷鸣师兄邀请来和大家聊聊Caffe60.没有太多准备, ...

  8. 3-[HTML]-head标签介绍

    1.head标签 我们首先来介绍一下head标签的主要内容和作用,文档的头部描述了文档的各种属性和信息,包括文档的标题.编码方式及URL等信息,这些信息大部分是用于提供索引,辩认或其他方面的应用(移动 ...

  9. loj#121.「离线可过」动态图连通性

    题面 话说#122怎么做啊 题解 我的\(\mathrm{LCT}\)水平极差,连最小生成树都快忘了,赶紧复习一下 做法和这篇是一样的 这道题还可以练习线段树分治 还可以练习ETT 果然是道吼题 代码 ...

  10. 浅谈MVC Razor基本语法

    首先说下MVC,mvc已经不用ViewState来保留网页的状态,所以大部分依赖ViewState的功能都将无法使用, 比如gridview的分页与排序,page trace等利用viewstate记 ...