一 从命令行输入n的值,调用方法求和
采用从命令行输入n的值,可以随意求1到任意一个数字的和。求和过程采用调用方法来计算。
代码如下:
public class Sum1{ //定义一个公开的类,起名Sum1
public static void main(String[] args){ //程序入口
java.util.Scanner s=new java.util.Scanner(System.in); //扫描从键盘输入的内容
System.out.print("请输入n的值:");
int n=s.nextInt(); //将输入的内容转换成int型,并赋给n
int retValue = sum(n); //调用方法
System.out.print(retValue); //打印结果
}
public static int sum(int n){ //方法体
int result = 0; //result赋初始值
for (int i=1;i<=n;i++){ //循环控制求和
result +=i; //累加
}
return result; //循环结束后返回计算结果
}
}
运行结果:
二 采用方法递归求和
同样采用从命令行输入n的值,只是求和的时候采用方法递归调用。
代码如下:
public class Sum2{ //定义一个公开的类,起名Sum1
public static void main(String[] args){ //程序入口
java.util.Scanner s=new java.util.Scanner(System.in); //扫描从键盘输入的内容
System.out.print("请输入n的值:");
int n=s.nextInt(); //将输入的内容转换成int型,并赋给n
int retValue = sum(n); //调用方法
System.out.print(retValue); //打印结果
}
public static int sum(int n){ //方法体
int result = 0;
if (n == 1){
return 1;
}
result = n + sum(n-1); //一直调用方法体sum来求和
return result; //循环结束后返回计算结果
}
}
运行结果:
递归做为一种算法在程序设计语言中广泛应用.是指函数/过程/子程序在运行过程中直接或间接调用自身而产生的重入现象.递归是计算机科学的一个重要概念,递归的方法是程序设计中有效的方法,采用递归编写程序能使程序变得简洁和清晰.。但是方法的递归调用也很耗费内存。