迭代和JDB

迭代和JDB


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

    • 源代码
    public class Combination {
      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("Input error: m cannot be larger than n !");
          else if (c == -2)System.out.println("Input error: m and n cannot be less than zero !");
          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);
      }
    }
    • 测试运行截图

      • 正常情况


- 异常情况


- 边界情况


  • JDB调试

    • 正常情况下用JDB调试程序c(X,2),X为学号最后一位+3

      我学号5214,即取c(7,2)调试。

    • 调试情况截图



原文地址:https://www.cnblogs.com/fzlzc/p/10617709.html

时间: 2024-10-29 21:52:41

迭代和JDB的相关文章

20175316盛茂淞 迭代和JDB

迭代和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 把代码推送到码云 代码 public class zuheshu { public static void main(String[] args)

20165203迭代和JDB测试

1.使用C(n,m)=C(n-1,m-1)+C(n-1,m)公式进行递归编程实现求组合数C(m,n)的功能 public class C { public static void main(String args[]) { int [] temp = new int [args.length]; int sum; for(int i=0; i<args.length;i++) { temp[i] = Integer.parseInt(args[i]); } sum = fact(temp[0],

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

一.任务详情 二.设计过程的问题及解决 1.程序编译时一直提示编译出现错误. 原因及解决:本以为声明对象和创建对象一起进行时,可以直接采用如zhubajie = new Xiyoujirenwu();这样的句势.后来仔细查看书第58——61页,发现这样只是在为对象分配变量,没有进行提前的声明.在名字前加上new,问题得到解决,编译通过. 2.结果不是预想结果. 原因及解决:自己开始是将数组长度设置为2,而不是设置为args.length:并且开始使用了++i,而不是i++.仔细分析代码后,将这两

#20175120彭宇辰 java第五周学习总结

第六章 接口与实现 教材学习内容总结 接口-接口声名interace -接口体1.只有常量声明和抽象方法2.所有常量和方法的访问权限都为public3.常量都为static常量4.可省略pulic\static\final 实现接口-类实现接口class A implements B,C 可连多个接口-方法重写非抽象类:重写所有方法抽象类:可以不重写PS:-public接口可被任意类实现-友好类可被同一包里的类实现-子类继承父类的接口 接口回调-接口变量存放实现该接口的类创建的对象-用接口变量调

学号 20175223 《Java程序设计》第 5 周学习总结

目录 教材学习内容总结 教材学习中的问题和解决过程 1. 在 jdb 调试时使用命令行参数. 代码调试中的问题和解决过程 1. 在jdb调试时通过命令行传入参数 2. "可能尚未初始化变量" 或 "无法从静态上下文中引用非静态 变量" [代码托管] 其他(感悟.思考等,可选) 学习进度条 参考资料 学号 20175223 <Java程序设计>第 5 周学习总结 目录 教材学习内容总结 第六章要点: 要点1:接口:interface: 要点2:实现接口im

关于迭代測试的一些思考

作者:朱金灿 来源:http://blog.csdn.net/clever101 一个软件的功能的越来越多,怎样建立一个规范的測试流程来保证对开发的功能进行充分的測试,是摆在我们面前的难题.在改动bug中经常会出现一种"按下葫芦浮起瓢"情形--改动了A模块的bug,却造成了原来測试没有问题的B模块出现了新的问题.这就促使我们思考:怎样保证測试的百分百的覆盖率.为此我设想一种迭代測试和迭代公布的流程.这个流程详细是这种:全部功能測试分为常规功能測试和新功能測试.所谓常规功能測试是指之前測

iOS学习6.Objective-C中的各种遍历(迭代)方式

说明:转自文顶顶 一.使用 for 循环 要遍历字典.数组或者是集合,for 循环是最简单也用的比较多的方法 -(void)iteratorWithFor { //////////处理数组////////// NSArray *arrayM = @[@"1",@"2",@"3",@"4"]; NSInteger arrayMCount = [arrayM count]; for (int i = 0; i<arrayMC

【转载】GBDT(MART) 迭代决策树入门教程 | 简介

      转载地址:http://blog.csdn.net/w28971023/article/details/8240756        GBDT(Gradient Boosting Decision Tree) 又叫 MART(Multiple Additive Regression Tree),是一种迭代的决策树算法,该算法由多棵决策树组成,所有树的结论累加起来做最终答案.它在被提出之初就和SVM一起被认为是泛化能力(generalization)较强的算法.近些年更因为被用于搜索排

LeetCode 145 Binary Tree Postorder Traversal(二叉树的后续遍历)+(二叉树、迭代)

翻译 给定一个二叉树,返回其后续遍历的节点的值. 例如: 给定二叉树为 {1, #, 2, 3} 1 2 / 3 返回 [3, 2, 1] 备注:用递归是微不足道的,你可以用迭代来完成它吗? 原文 Given a binary tree, return the postorder traversal of its nodes' values. For example: Given binary tree {1,#,2,3}, 1 2 / 3 return [3,2,1]. Note: Recur