20175314 《Java程序设计》迭代和JDB

要求

1 使用C(n,m)=C(n-1,m-1)+C(n-1,m)公式进行递归编程实现求组合数C(m,n)的功能

2 m,n 要通过命令行传入

3 提交测试运行截图(至少三张:正常如c(3,2)、异常如c(2, 3)、边界情况如c(m,m))

4 提交正常情况下用JDB调试程序c(X,2)的截图,X为学号最后一位+3,至少四张截图

5 把代码推送到码云

代码

因为之前没有注意到第二项要求,第一次写代码用到的是Scanner:

import java.util.Scanner;
public class iteration {
public static void main(String args[]) {
int c,n,m;
System.out.println("输入正整数(回车确定)");
Scanner reader=new Scanner(System.in);
n = reader.nextInt();
m = reader.nextInt();
c = Result(n, m);
if (c == -1) System.out.println("输入错误:m应小于等于n!");
else if (c == -2) System.out.println("输入错误:m或n不能小于零!");
else System.out.println(c);
}
public static int Result(int n, int m) {
if (m == 1) return n;
else if (m == 0 || m == n) return 1;
else if (n < m && n>0 && m>0) return -1;
else if (n < 0 || m < 0) return -2;
else
return Result(n - 1, m - 1) + Result(n - 1, m);
}
}

后来及时学习在命令行传入参数,修改了代码:

public class Iteration {
public static void main(String args[]) {
int c,n,m;
n = Integer.parseInt(args[0]);
m = Integer.parseInt(args[1]);
c = Result(n, m);
if (c == -1) System.out.println("输入错误:m应小于等于n!");
else if (c == -2)System.out.println("输入错误:m或n不能小于零!");
else System.out.println(c);
} public static int Result(int n, int m) {
if (m == 1) return n;
else if (m == 0 || m == n) return 1;
else if (n < m && n>0 && m>0) return -1;
else if (n < 0 || m < 0) return -2;
else
return Result(n - 1, m - 1) + Result(n - 1, m);
}
}

截图

  • 正常情况

  • 异常情况



  • 边界情况

  • 正常情况(学号测试)

问题

最早使用的是Scanner语句进行参数输入,后来请教了同学学习使用命令行输入,在终端java的时候一起输入参数,输入方式感觉极为奇怪,暂时没有发现这样输入的优势。

20175314 《Java程序设计》迭代和JDB的更多相关文章

  1. 20175221 《Java程序设计》迭代和JDB(课下作业,选做):

    20175221 <Java程序设计> 迭代和JDB(课下作业,选做): 任务详情 1 使用C(n,m)=C(n-1,m-1)+C(n-1,m)公式进行递归编程实现求组合数C(m,n)的功 ...

  2. 20175314 《Java程序设计》第八周学习总结

    20175314 <Java程序设计>第八周学习总结 教材学习内容总结 安利一个非常实用的图片处理工具:图片工厂,它具有非常强大的图片批处理能力,比如加水印.降低画质.命名等,不仅如此它还 ...

  3. 20175314 《Java程序设计》第九周学习总结

    20175314 <Java程序设计>第九周学习总结 教材学习内容总结 根据课本的介绍下载了MySQL和Navicat for MySQL并成功对后者进行破解 MySQL客户端管理工具(如 ...

  4. 20175314 《Java程序设计》第七周学习总结

    20175314 <Java程序设计>第七周学习总结 教材学习内容总结 第八章:常用实用类 String()类代表字符串:Java 程序中的所有字符串字面值(如 "abc&quo ...

  5. 20175314 《Java程序设计》第六周学习总结

    20175314 <Java程序设计>第六周学习总结 教材学习内容总结 第七章:内部类与异常类 内部类:内部类就是在一个类中再定义一个类,这个在类中定义的类就叫做内部类,而包含内部类的类叫 ...

  6. 20175314 《Java程序设计》第五周学习总结

    20175314 <Java程序设计>第五周学习总结 教材学习内容总结 public接口可以被任意一个类实现,友好接口可被同一个包里的接口实现. Java不支持多重继承,即一个类只能有一个 ...

  7. 20175314 《Java程序设计》第四周学习总结

    20175314 <Java程序设计>第四周学习总结 教材学习内容总结 每个子类只能有一个父类,而一个父类可以有多个子类.可以使用关键字extends来定义一个类的子类:class 子类名 ...

  8. 20175314 《Java程序设计》第三周学习总结

    20175314 <Java程序设计>第三周学习总结 教材学习内容总结 编程语言的发展事是从面向机器(汇编.机器)到面向过程(C)再到面向对象(Java) 成员变量: 1.成员变量定义在类 ...

  9. 20175314 《Java程序设计》第二周学习总结

    20175314 <Java程序设计>第二周学习总结 教材学习内容总结 我在APPstore上发现了一个可以支持我们在IOS系统上学习实践Java程序的开发环境,只需要购买专业版就可以使用 ...

随机推荐

  1. Windows7 密码修改

    一:不用输入原密码的方式修改用户的密码 1 命令行输入命令:mmc  #进入到控制台 2 点击左上角的文件,选择添加/删除管理单元 3 选择本地用户和组管理单元,添加到本地计算机,完成,确定 4 添加 ...

  2. android ListView 可缩放,支持左右上下手势

    public class ZoomListView extends ListView implements SwipeListener { public static enum Action { Le ...

  3. mongodb集群配置副本集

    测试环境 操作系统:CentOS 7.2 最小化安装 主服务器IP地址:192.168.197.21 mongo01 从服务器IP地址:192.168.197.22 mongo02 从服务器IP地址: ...

  4. Java Collection - 001 集合的遍历

    import java.util.ArrayList; import java.util.Iterator; import java.util.List; import com.java.domain ...

  5. 理解OpenShift(2):网络之 DNS(域名服务)

    理解OpenShift(1):网络之 Router 和 Route 理解OpenShift(2):网络之 DNS(域名服务) 理解OpenShift(3):网络之 SDN 理解OpenShift(4) ...

  6. Dapper/SqlMapper映射对应问题

    Dapper, a light weight object mapper for ADO.NET 轻量级orm辅助类,不用配置,直接引入一个cs文件或者引入其dll就能使用. 使用连接对象的query ...

  7. [UE4]UMG小结

    一.当没有需要的UI怎么办?先别急着自己定制,可以到虚幻商城去看看,各种类型的UI都有,而且价格都不贵. 二.推荐一个比较有参考价值的UI:User Interface Kit,里面的UI很多,还有小 ...

  8. Activiti流程设计工具

    在Actitivi工程的src/main/resources新建一个文件夹diagrams 然后右键,创建一个activiti Diagram 取名为helloWorld后finish 中间区域,是我 ...

  9. OpenStack Mitaka/Newton/Ocata/Pike 各版本功能贴整理

    逝者如斯,刚接触OpenStack的时候还只是第9版本IceHouse.前几天也看到了刘大咖更新了博客,翻译了Mirantis博客文章<OpenStack Pike 版本中的 53 个新功能盘点 ...

  10. 爬虫基础线程进程学习-Scrapy

    性能相关 学习参考:http://www.cnblogs.com/wupeiqi/articles/6229292.html 在编写爬虫时,性能的消耗主要在IO请求中,当单进程单线程模式下请求URL时 ...