java基础习题50道(九)

这个博客包含了多个Java编程的基础习题,包括寻找特定条件的两位数、计算0-7组成奇数的个数、验证偶数是否可以表示为两个素数之和,以及判断素数能被几个9整除的问题。通过示例代码展示了如何解决这些问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

package com.oracle.day161105_java50;


/*
 * 【程序41】
          题目:海滩上有一堆桃子,五只猴子来分。第一只猴子把这堆桃子凭据分为五份,
         多了一个,这只猴子把多的一个扔入海中,拿走了一份。第二只猴子把剩下的桃子又平均分成五份,
        又多了一个,它同样把多的一个扔入海中,拿走了一份,第三、第四、第五只猴子都是这样做的,
        问海滩上原来最少有多少个桃子?
 * */
public class Demo41 {


public static void main(String[] args) {
// TODO Auto-generated method stub


int n;
n = fun(0);
System.out.println("原来有"+n+"个桃子");
}
private static int fun(int i){
if(i==5)
 return 1;
else
 return fun(i+1)*5+1;
}

}



package com.oracle.day161105_java50;


/*
 * 【程序42】
          题目:809*??=800*??+9*??+1 
          其中??代表的两位数,8*??的结果为两位数,9*??的结果为3位数。
          求??代表的两位数,及809*??后的结果。
 * */
public class Demo42 {


public static void main(String[] args) {
// TODO Auto-generated method stub


int n = 0;
boolean flag = false;
for(int i=10;i<100;i++)
 if(809*i==800*i+9*i+1){
  flag = true;
  n = i;
  break;
 }
if(flag)
 System.out.println(n);
else
 System.out.println("无符合要求的数!");
}


}



package com.oracle.day161105_java50;


/*【程序43】
题目:求0—7所能组成的奇数个数。
 * */
public class Demo43 {


public static void main(String[] args) {
// TODO Auto-generated method stub


int count = 0;
//声明由数字组成的数
int n = 8;
//一位数
count = n/2;
//两位数
count += (n-1)*n/2;
//三位数
count += (n-1)*n*n/2;
//四位数
count += (n-1)*n*n*n/2;
//五位数
count += (n-1)*n*n*n*n/2;
//六位数
count += (n-1)*n*n*n*n*n/2;
//七位数
count += (n-1)*n*n*n*n*n*n/2;
System.out.println("0-7所能组成的奇数个数:"+count);

}


}



package com.oracle.day161105_java50;


import java.util.Scanner;


/*【程序44】
       题目:一个偶数总能表示为两个素数之和。
*/
public class Demo44 {


public static void main(String[] args) {
// TODO Auto-generated method stub


System.out.print("请输入一个偶数:");
Scanner scan = new Scanner(System.in);
int n = scan.nextInt();
scan.close();
if(n%2!=0){
 System.out.println("您输入的不是偶数!");
 return;
}
twoAdd(n);
}
//偶数分解为素数之和
private static void twoAdd(int n){
for(int i=2;i<n/2+1;i++){
if(isPrime(i)&&isPrime(n-i)){
System.out.println(n+"="+(i)+"+"+(n-i));
break;
}
}
}
//判断素数
private static boolean isPrime(int m){
boolean flag = true;
for(int i=2;i<Math.sqrt(m)+1;i++){
if(m%i==0){
flag = false;
break;
}
}
return flag;
}


}



package com.oracle.day161105_java50;


import java.util.Scanner;


/*
 * 【程序45】
          题目:判断一个素数能被几个9整除 
 * */
public class Demo45 {


public static void main(String[] args) {
// TODO Auto-generated method stub


 System.out.print("请输入一个数:");
 Scanner scan = new Scanner(System.in);
 long l = scan.nextLong();
 long n = l;
 scan.close();
 int count = 0;
 while(n>8){
 n /= 9;
 count++;
 }
 System.out.println(l+"能被"+count+"个9整除。");
}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值