`
夏文权
  • 浏览: 242174 次
  • 性别: Icon_minigender_1
  • 来自: 贵州
社区版块
存档分类
最新评论

用数组,递归,常规的for循环实现1加到100的程序

阅读更多
常规的for循环:

 

 

package com.itcast;
/**
 * 用for循环实现1加到100的程序
 * @author Administrator
 *
 */
public class Sum {
    public static void main(String[] args) {
        int sum=0;
        for(int i=0; i<=100; i++){
           sum+=i;
        }
   System.out.println(sum);
  }
}

 

 

数组:

 

package com.itcast;
/**
 * 用数组来实现1加到100的程序
 * @author Administrator
 *
 */
public class ArrayList{
    public static void main(String arg[]) {
   
            Integer arr[]=new Integer[100];
            int sum=0;
            for(int i=0;i<100;i++){
             arr[i]=i+1;
            }
         for(int j=0;j<100;j++){
          sum+=arr[j];
         }
             System.out.println(""+sum);
     }
} 

 

 

 

递归:

 

 

 

package com.itcast;
/**
 * 用递归实现1加到100的程序
 * @author Administrator
 *
 */
public class DiGui {
 
    public static void main(String[] args) {   
        System.out.println(diGui(100));   
    }   
    public static int diGui(int n){   
        int result;   
        if(n == 1){   
           return 1;   
       }   
      else{   
          result = diGui(n - 1) + n;   
          return result;   
      }   
   }  
}

 

 

附加上用递归实现n!的算法

 

 

package com.itcast;
/**
 * 用递归实现n!的程序
 * n!的算法
 * 当超过数据类型的范围时候,结果会为0;
 * 
 * @author Administrator
 *
 */
public class DiGui01 {

    public static void main(String[] args) {
        System.out.println(fact(5));

   }

   private static int fact(int i) {
      int result;
      if(i == 1){
         return 1;
     }else{
          result = fact(i-1)*i;
    }
    return result;
    }

}

  

 

 

分享到:
评论

相关推荐

    FOR循环(递归下降、输出三地址)

    通过本次课程设计,不仅加深了对递归下降法的理解,还学会了如何设计和实现FOR循环语句的翻译程序。在这个过程中,学习到了如何处理复杂的语法结构以及如何生成有效的中间代码。 此外,还意识到了实际编程中遇到的...

    java高效打印一个二维数组的实例(不用递归,不用两个for循环)

    本文将介绍一种不使用递归和两个for循环的高效方法来打印Java二维数组。 首先,理解二维数组的结构。二维数组可以看作是一组一维数组的集合,每个一维数组代表数组的一行。因此,我们可以通过跟踪行索引(`i`)和列...

    7.4 for循环 Project1.zip

    压缩包文件名为"Project1"可能包含一个编程项目的源代码,该项目可能使用`for`循环来执行特定任务,比如处理数据、遍历文件系统、计算数学序列或者实现游戏逻辑等。在实际项目中,`for`循环常常和其他编程概念结合,...

    python常规方法实现数组的全排列

    在Python中,实现全排列的方法通常涉及到递归。如上文实例所示,我们可以定义一个名为`perm`的函数来实现这个功能。首先,我们需要一个基本情况,即当数组长度小于等于1时,返回该数组本身,因为只有一个元素或没有...

    JS实现遍历不规则多维数组的方法

    当我们需要遍历这种不规则多维数组时,常规的遍历方法如for循环或for...in循环可能无法完全解决问题,因为它们通常要求数组的结构是规则的,即每个子元素都具有相同的数据结构和层次。而递归遍历方法可以很好地应对...

    大数的阶乘非递归算法C#源码

    在这个主题中,我们将深入探讨如何用非递归算法来实现大数阶乘计算,并且利用ArrayList来存储中间结果。 首先,让我们了解阶乘的概念。阶乘是数学中的一个运算,对于非负整数n,其阶乘表示为所有小于等于n的正整数...

    JavaScript 另类遍历数组实现代码

    通常,我们遍历数组的常规方法包括for循环、for...in循环、for...of循环、forEach()方法等。但是在一些特定的场景下,可能需要使用一些不太常见的技巧来遍历数组,这种“另类”的遍历方法或许可以带来更加简洁或高效...

    PHP count() 统计数组个数函数.rar

    - 遍历数组:知道数组长度可以帮助在循环中控制遍历次数,如`for`或`foreach`循环。 - 分页处理:在分页显示数据时,`count()`可以用于计算总页数。 - 数据库查询优化:在配合数据库查询时,`count()`可用于计算...

    java面试题-leetcode题解之第33题搜索旋转排序数组.zip

    4. **递归与迭代实现:** 解决这个问题可以使用递归或迭代的方式,虽然两种方法都可以达到目标,但是考虑到性能,通常推荐使用迭代,因为递归可能会导致栈溢出。 **解题步骤:** 1. 初始化左指针`left`为0,右指针...

    24点程序课程设计

    我们需要编写各种测试用例,包括边界情况(如全零数组、全一数组、负数等)和常规情况,确保程序在各种输入下都能正确运行并找出所有可能的24点解。 通过这个24点程序课程设计,不仅可以提升C++编程技能,还能锻炼...

    2011高级语言程序设计试卷1答案

    - **流程控制**:如条件语句(if-else)、循环(for, while)和跳转语句(break, continue)的使用。 - **函数调用与定义**:函数参数传递、返回值、函数的嵌套与递归。 - **数组与指针**:数组的操作、指针的...

    计算机算法设计与分析课程设计常规题目的(C及C++)代码集.pdf

    根据给定文件的信息,我们可以看出文件涉及到计算机算法设计与分析课程中一些常规题目的代码实现。具体而言,文件中提及了合并排序算法(Merge Sort)和相关的C及C++语言实现。下面,我们将详细解释这些代码中包含的...

    JS数组求和的常用方法总结【5种方法】

    本文将详细介绍五种不同的方法来实现JS数组求和,帮助开发者更好地理解和应用这些技术。 1. **递归方法**: 递归是一种函数调用自身的技术。在数组求和的递归方法中,我们检查数组长度,如果为空则返回0,如果只...

    C语言N阶层程序,满足大数的阶层

    1. **数组表示法**: 使用数组表示大数,每个数组元素代表一位数字。 2. **逐位相乘**: 按照阶乘的定义逐位相乘,并考虑进位。 3. **动态调整数组长度**: 根据乘法结果动态调整数组的长度,以容纳更大的数。 4. **...

    浙江省C语言省二级考试上机模拟试题库及答案.pdf

    5. 条件语句:if、else if等条件语句在文件中被用于执行基于条件的逻辑分支,这是实现程序逻辑控制的重要手段。 6. 循环语句:while、for等循环语句在文档中被用来重复执行代码块,直至满足特定条件。循环是编程中...

    2018年程序员考试面试题精选题.pdf,这是一份不错的文件

    其中一道题目要求求解1到n的和,但禁止使用乘除法、for、while、if、else、switch、case等关键字以及条件判断语句。 首先,我们来分析这个问题。常规情况下,求解1到n的和可以使用公式`n*(n+1)/2`,但题目设定了...

    LabVIEW程序实例[归纳].pdf

    7. 3-5页要求使用常规G图形函数和公式节点实现相同的功能,同时添加事件处理机制,这涉及到函数的等价性以及事件驱动编程。 8. 设计一个简单的信号源,可以生成正弦波、三角波和方波,并在Waveform Graph上显示。这...

    C程序范例宝典(基础代码详解)

    实例063 用指针实现逆序存放数组元素值 79 实例064 输出二维数组有关值 80 实例065 输出二维数组任一行任一列值 81 实例066 使用指针查找数列中最大值、最小值 83 实例067 用指针数组构造字符串数组 84 ...

    C语言常规问题集合PDF

    1. **结构化编程**:C语言支持结构化编程概念,通过函数、循环和选择结构,可以组织代码,使程序结构清晰易懂。 2. **低级特性**:C语言提供了指针操作,可以直接访问内存,这在处理硬件交互和系统级编程时非常有用...

    数据结构与算法概要PPT学习教案.pptx

    在实现递归算法时,需要注意递归出口,即何时结束递归调用,以及如何通过递归调用来计算结果,如小兔子问题和Fibonacci数列的计算。 分治法是一种将大问题分解为若干小问题并逐个解决的策略。它的基本步骤包括分解...

Global site tag (gtag.js) - Google Analytics