程序1//兔子的规律为1,1,2,3,5,8,13,21
public class Demo {
public static void main(String[] args) {
int i=6;
int count = getCount(i);
System.out.println("count:"+count);
}
public static int getCount(int n){
if(n==1||n==2){
return 1;
}else{
return getCount(n-1)+getCount(n-2);
}
}
}
程序2:求素数
public class Demo2 {
public static void main(String[] args) {
for(int x=2;x<100;x++){
if(getCount(x)){
System.out.println(x+":是素数");
}
}
}
public static boolean getCount(int n){
for(int x=2;x<n;x++){
if(n%x==0){
return false;
}
}
return true;
}
}
程序3://打印水仙花数
public class Demo3 {
public static void main(String[] args) {
for(int x=100;x<1000;x++){
print(x);
}
}
public static void print(int n){
int ge=n%100;
int shi=n/10%10;
int bai=n/100;
if(n==ge*ge*ge+shi*shi*shi+bai*bai*bai){
System.out.println(n+"是水仙花数");
}
}
}
程序4:正整数分解因式:90=2*3*3*5;
public class Demo4 {
public static void main(String[] args) {
//定义需要分解的正整数
int num=90;
getYinShu(num);
}
//采用递归的方式
public static void getYinShu(int n){
for(int x=2;x<=n;x++){
if(n%x==0){
System.out.print(x+"*");
//分解一次之后将其商作为正整数再进行分解
getYinShu(n/x);
}
}
System.out.println(n);
//System.exit(0)退出整个系统,否则程序会报错
System.exit(0);
}
}
注意:System.exit(0)退出整个系统,否则程序会报错,此代码必须有
程序5:利用条件运算符的嵌套:学习成绩>=90 A 60-89分 B 60分以下 C
public class Demo5 {
public static void main(String[] args) {
//键盘录入学习成绩
Scanner sc=new Scanner(System.in);
System.out.println("请输入学生成绩:");
int score=sc.nextInt();
System.out.println(getScore(score));
}
private static char getScore(int score) {
if(score>=90){
return 'A';
}else if(score>=60){
return 'B';
}else {
return 'C';
}
}
}
程序6:输入两个正整数m和n,求其最大公约数和最小公倍数
public class Demo6 {
public static void main(String[] args) {
greateCommonDivisor(45,16);
}
//求m和n的最大公约数的方法:
public static void greateCommonDivisor(int m,int n){
int temp=m>n?m:n;
int gcd=0;
for(int x=1;x<=temp;x++){
if(m==1||n==1){
System.out.println("最大公约数是1");
break;
}
if(m%x==0&&n%x==0){
gcd=x;
}
}
System.out.println(m+"和"+n+"的最大公约数是:"+gcd);
//求m和n的最小公倍数
int t=gcd*(m/gcd)*(n/gcd);
System.out.println(m+"和"+n+"的最小公倍数是:"+t);
}
}