
Java算法
HuikangLiang
每一天,都要向优秀的人学习!
展开
-
歌德巴赫猜想的近似证明
【题目要求】所谓哥德巴赫猜想是说任何一个大于2的偶数都能表示成为两个素数之和,编写一个程序,验证一定范围内哥德巴赫猜想的正确性。【代码】import java.util.Scanner;public class Ta { public static void main(String[] args){ int i=0; for(int n=4;n<=100;原创 2012-03-06 20:47:24 · 539 阅读 · 0 评论 -
反向输出字符串
【题目要求】编写一个程序,实现将输入的任意长度的字符串反向输出的功能。例如输入字符串:ABCD,输出字符串:DCBA。【方法一】import java.util.Scanner;public class Ta { public static void main(String[] args){ String s=""; Scanner str = new Sca原创 2012-03-06 17:26:51 · 1678 阅读 · 1 评论 -
常胜将军
【题目要求】现有21根火柴,两人轮流取,每人每次可以取1至4根,不可多取,也不能不取,谁取最后一根火柴谁输。请编写一个程序进行人机对弈,要求人先取,计算机后取;计算机一方为常胜将军。【代码】import java.util.Scanner;public class Ta{ public static void main(String[] args) { int n=2原创 2012-03-07 16:59:35 · 720 阅读 · 0 评论 -
完全数
【题目要求】如果一个数恰好等于它的因子之和,那么这个数就被称为完全数。例如6的因子为1,2,3,而6=1+2+3,因此6是一个完全数。求出1000以内的完全数。【代码】public class Ta{ public static void main(String[] args) { for(int i=1;i<1000;i++){ if(fan(i)){原创 2012-03-07 17:12:11 · 552 阅读 · 0 评论 -
亲密数
【题目要求】如果整数A的全部因子(包括1,包括A本身)之和等于B,并且整数B的全部因(包括1,不包括B本身)之和等于A,则称整数A和B为亲密数。求解3000以内的全部亲密数。【方法1】public class Ta{ public static void main(String[] args) { for(int i=1;i<3000;i++){ for(int j原创 2012-03-07 17:26:06 · 643 阅读 · 0 评论 -
谁在说谎
【题目要求】3个嫌疑犯在法官面前各执一词,甲说:乙在说谎;乙说:丙在说谎;丙说:甲乙两人都在说谎。法官为了难,甲乙丙三人到底谁在说谎,谁说的是真话?【代码】public class Ta { public static void main(String[] args){ for(int i=0;i<=1;i++){ for(int j=0;j<=1;j++){原创 2012-03-07 17:37:40 · 857 阅读 · 0 评论 -
分解质因数
【题目要求】编写一个程序,实现分解质因数。【方法一】import java.util.Scanner;public class Ta { public static void main(String[] args){ Scanner str = new Scanner(System.in); int n=str.nextInt(); fan(n);原创 2012-03-07 16:27:40 · 476 阅读 · 0 评论 -
连续整数固定和问题
【题目要求】编写一个程序,找出一个数的全部的连续整数固定和。所谓一个数n的连续整数固定和,就是指存在a1,a2,...,an,其中ai+1比ai大1,使得a1+a2+...+an=n.这样a1,a2,...,an,称为n的一个连续整数固定和。例如27的全部的连续整数固定和有3组:2+3+...+7=27;8+9+10=27;13+14=27。【代码】import java.util.S原创 2012-03-09 14:44:20 · 768 阅读 · 0 评论 -
具有特殊性质的数
【题目要求】有这样一个4位数abcd,它具有这样的性质abcd=(ab+cd)^2。其中,ab和cd为两个2位数,求这个4位数abcd。【代码】public class Ta { public static void main(String[] args){ for(int i=1000;i<=9999;i++){ if(Math.pow(i/100+i%100, 2原创 2012-03-09 15:09:00 · 1678 阅读 · 0 评论 -
验证角谷猜想
【题目要求】角谷猜想的内容为:任意给定一个自然数,若它为偶数则除以2,若它为奇数则乘3加1,得到一个新的自然数,按照这样的计算方法计算下去,若干次后得到的结果必然为1。编写程序对角谷猜想的正确性加以验证。【代码1】import java.util.Scanner;public class Ta { public static void main(String[] args)原创 2012-03-09 15:28:50 · 1678 阅读 · 0 评论 -
判断闰年
【题目要求】输入一个年份,判断该年是否是闰年。【题目分析】所谓闰年,是要符合下面两个条件之一: 1 该年份能被4整除,但不能被100整除。 2 该年份能被4整除,又能被400整除。import java.util.Scanner;public class Ta{ public static void main(String[] args) { Scanne原创 2012-03-05 17:01:23 · 495 阅读 · 0 评论 -
十进制and二进制
【题目要求】编写一个程序,将输入的十进制数转化为二进制表示。例如:输入十进制数64,输出二进制数表示1000000。【迭代法】public class Ta{ public static void main(String[] args) { Scanner str = new Scanner(System.in); int n=str.nextInt(); Str原创 2012-03-05 19:48:56 · 557 阅读 · 0 评论 -
新郎与新娘
【题目要求】3对新婚夫妇参加婚礼,3个新郎为A、B、C,,三个新娘为X、Y、Z。有人不知道谁和谁结婚,于是询问了6位新人中的3位,但听到的回答是这样的:A说他将和X结婚;X说她的未婚夫是C;C说他将和Z结婚。这人停放后知道他们在开玩笑吗,全是假话-请编写程序找出谁将和谁结婚。【代码】public class Ta { static char[] a=new char[]{'A',原创 2012-03-06 21:36:57 · 802 阅读 · 0 评论 -
爱因斯坦的阶梯问题
【题目要求】爱因斯坦曾出过这样一道有趣的数学题:有一个长阶梯,若每步上2阶,最后剩1阶;若每步上3阶,最后剩2阶;若每步上5阶,最后剩4阶;若每步上6阶,最后剩5阶;只有每步上7阶,最后刚好一阶也不剩。请问该阶梯至少有多少阶?【代码】public class Ta { public static void main(String[] args){ int x=7; i原创 2012-03-06 21:45:10 · 2696 阅读 · 0 评论 -
寻找水仙花数
【题目要求】如果一个3位数等于各位数字的立方和,则称这个数为水仙花数。编写程序,找出全部水仙花数。【代码】public class Ta { public static void main(String[] args){ int[] n=new int[3]; int x=0; for(int i=100;i<=999;i++){ x=i; fo原创 2012-03-06 21:52:30 · 561 阅读 · 0 评论 -
n阶勒让德多项式求解
【题目要求】n阶勒让德多项式定义为:编写程序,输入正整数n和任意数x,求出勒让德多项式的值Pn(x).。【代码】import java.util.Scanner;public class Ta { public static void main(String[] args){ Scanner str = new Scanner(System.in);原创 2012-03-06 16:55:08 · 4333 阅读 · 0 评论 -
三色求问题
【题目要求】有红、黄、绿三种颜色的球,其中红球3个,黄球3个,绿球6个。现将这12个求混放在一个盒子中,从中任意摸出8个球,编程计算摸出球的各种颜色搭配。【代码】public class Ta { public static void main(String[] args){ System.out.println("red"+"\t"+"yellow"+"\t"+"gr原创 2012-03-06 20:55:58 · 1024 阅读 · 0 评论 -
百钱买百鸡问题
【题目要求】我国古代数学家张丘建在《算经》一书中曾提出过著名的“百钱买百鸡”问题,该问题叙述如下:鸡翁一,值钱五;鸡母一,值钱三;小鸡三,值钱一;则翁、母、小鸡各几何?【代码】public class Ta { public static void main(String[] args){ for(int i=0;i<=100;i++){ for(int j=0原创 2012-03-06 21:05:53 · 925 阅读 · 0 评论 -
判断回文数字
【题目要求】编写一个程序,判断从键盘接收的数字是否是回文数字。【代码】import java.util.Scanner;public class Ta { public static void main(String[] args){ Scanner str = new Scanner(System.in); int n = str.nextInt();原创 2012-03-06 21:12:49 · 536 阅读 · 0 评论 -
一年中的第几天
【题目要求】输入某年某月某日,判断这一天是这一年的第几天?【代码】import java.util.Scanner;public class Ta { public static void main(String[] args){ Scanner str = new Scanner(System.in); System.out.println("Pleas原创 2012-03-06 17:36:11 · 381 阅读 · 0 评论 -
求两个数的最大公约数和最小公倍数
【题目要求】编写一个程序计算两个正整数的最大公约数和最小公倍数。【方法1】import java.util.Scanner;public class Ta { public static void main(String[] args){ Scanner str = new Scanner(System.in); int i= str.nextInt();原创 2012-03-06 20:25:29 · 661 阅读 · 0 评论