【程序23】题目:有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁。问第4个人岁数,他说比第3个人大2岁。问第三个人,又说比第2人大两岁。问第2个人,说比第一个人大两岁。最后问第一个人,他说是10岁。请问第五个人多大?
1.程序分析:利用递归的方法,递归分为回推和递推两个阶段。要想知道第五个人岁数,需知道第四人的岁数,依次类推,推到第一人(10岁),再往回推。
public class Ex23 {
static int getAge(int n){
if (n==1){
return 10;
}
return 2 + getAge(n-1);
}
public static void main(String[] args) {
System.out.println("第五个的年龄为:"+getAge(5));
}
}
【程序24】题目:给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。
import java.util.Scanner;
public class Ex24 {
public static void main(String[] args) {
Ex24 tn = new Ex24();
Scanner s = new Scanner(System.in);
long a = s.nextLong();
if(a < 0 || a > 100000) {
System.out.println("Error Input, please run this program Again");
System.exit(0);
}
if(a >=0 && a <=9) {
System.out.println( a + "是一位数");
System.out.println("按逆序输出是" + '\n' + a);
} else if(a >= 10 && a <= 99) {
System.out.println(a + "是二位数");
System.out.println("按逆序输出是" );
tn.converse(a);
} else if(a >= 100 && a <= 999) {
System.out.println(a + "是三位数");
System.out.println("按逆序输出是" );
tn.converse(a);
} else if(a >= 1000 && a <= 9999) {
System.out.println(a + "是四位数");
System.out.println("按逆序输出是" );
tn.converse(a);
} else if(a >= 10000 && a <= 99999) {
System.out.println(a + "是五位数");
System.out.println("按逆序输出是" );
tn.converse(a);
}
}
public void converse(long l) {
String s = Long.toString(l);
char[] ch = s.toCharArray();
for(int i=ch.length-1; i>=0; i--) {
System.out.print(ch[i]);
}
}
}
分享到:
相关推荐
JAVA经典算法40题.pdf 本资源是JAVA经典算法40题的PDF文件,该文件包含了40个经典算法题目,每个题目都有相应的Java代码实现。以下是对标题、描述、标签和部分内容的知识点解释: 标签:“数据库” 虽然标签是...
Java算法集题大全Java算法集题大全Java算法集题大全Java算法集题大全Java算法集题大全Java算法集题大全Java算法集题大全Java算法集题大全Java算法集题大全Java算法集题大全Java算法集题大全Java算法集题大全Java算法...
JAVA经典算法40面试题 本资源摘要信息涵盖了JAVA经典算法40面试题,包含基本的算法面试代码题。以下是对标题、描述、标签和部分内容的详细解释: 一、标题:“JAVA经典算法40面试题” 该标题表明该资源是关于JAVA...
通过解决这些算法题,开发者可以锻炼逻辑思维,理解和掌握数据结构,如数组、链表、栈、队列、树、图等,以及排序、搜索、图论、动态规划等核心算法。 在JAVA经典算法40题.doc中,可能包含的题目类型有递归、分治、...
JAVA经典算法40题 JAVA经典算法40题 JAVA经典算法40题
本压缩包包含了三个文档,分别是“JAVA经典算法40题.doc”、“最新JAVA编程题全集_50题及答案.doc”和“50道JAVA基础编程练习题.doc”,这些资源为初学者提供了大量的实践机会,有助于深入理解和运用Java。...
【JAVA经典算法40题面试题案例】 在Java面试中,算法题是考察候选人编程能力的重要环节。...它们是Java程序员在面试中可能遇到的经典算法题,熟练掌握这些技巧能够提高解决问题的能力,并有助于在面试中脱颖而出。
在编程领域,特别是Java开发,熟练掌握算法是提升技术能力的关键。"JAVA经典算法90题【含源码】"的资源集合为Java初学者提供了...所以,对于初学者来说,这套资料是提高Java算法能力的宝贵资源,应充分利用并深入研究。
可能不太好,见谅。JAVA经典算法90题,lx76939412上传的
JAVA经典算法面试39题及答案 本资源总结了39道经典的 JAVA 算法面试题目,每个题目都附带答案,涵盖了常见的算法问题,旨在帮助读者更好地掌握 JAVA 编程语言和算法设计。 算法概述 算法是计算机科学中最重要的...
"JAVA经典算法40题"这个压缩包提供了一个学习和实践的机会,它包含了40个Java编程中的算法挑战。这些题目涵盖了数据结构、排序、搜索、图论等多个核心领域,旨在帮助Java程序员深化对算法的理解,提高编程效率。 ...
JAVA经典算法30题 本资源是一个java经典算法题库,共包含30个经典算法题目,涵盖了多种算法领域,包括递归、素数、水仙...本资源是一个非常有价值的java经典算法题库,对于学习java算法的学生和开发者来说非常有帮助。
JAVA经典算法题
Java经典算法题是程序员在开发过程中常常需要面对的挑战,它们可以帮助我们提升编程思维,优化问题解决能力,尤其是在处理复杂数据结构和高效计算时显得尤为重要。这个压缩包中包含了一份名为"JAVA经典算法40题.doc...
Java基础编程练习题和经典算法是提升编程技能和准备面试的关键环节。这50题的基础编程练习涵盖了Java语言的核心概念,如数据类型、控制结构、类与对象、异常处理、集合框架等,旨在帮助学习者巩固基础知识并提高编程...
在给定的JAVA经典算法50题中,我们看到了几个典型的编程题目,涵盖了递归、素数判断和特定数字性质的检查。以下是这些程序的主要知识点: 1. **斐波那契数列**(Fibonacci Sequence): - 在程序1中,题目描述了一...