7月19课后题

Question5:
1、写⼀个函数add,接收两个整数作为参数,返回这两个整数的和。

 public class question5 {
	public static void main(String[] args) {
		 Scanner scanner=new Scanner(System.in);
		 System.out.println("输入第一个参数:");
		 int a=scanner.nextInt();
		 System.out.println("输入第二个参数:");
		 int b=scanner.nextInt();
		 int add = add(a, b);
         System.out.println(add);
	}
   public static int add(int a,int b){
	   return a+b;
   }
}

在这里插入图片描述

2、写⼀个函数,接收⼀个整数,输出这个整数的所有因⼦。

    public class question5 {
	public static void main(String[] args) {
		 Scanner scanner=new Scanner(System.in);
		 System.out.println("请输入一个整数:");
		 int a=scanner.nextInt();
		 yinzi(a);
	}
    public static void yinzi(int a){
    	for(int i=1;i<a;i++){
    		if(a%i==0){
    			System.out.println(i);
    		}
    	}
    }  
}

在这里插入图片描述

3、写⼀个函数,接收⼀个整数n,输出1+2+3+…+n 的和。

   public class question5 {
	public static void main(String[] args) {
		 Scanner scanner=new Scanner(System.in);
		 System.out.println("请输入一个整数:");
		 int a=scanner.nextInt();
		 add(a);
	}
    public static void add(int a){
    	int sum=0;
	      for(int i=0;i<=a;i++){
	    	  sum+=i;
	      }
	      System.out.println(sum);
    }  
}

在这里插入图片描述

4、写⼀个函数,接收⼀个整数参数n,输出n 个HelloWorld。

    public class question5 {
	public static void main(String[] args) {
		 Scanner scanner=new Scanner(System.in);
		 System.out.println("请输入一个整数:");
		 int a=scanner.nextInt();
		 out(a);
	}
    public static void out(int a){
    	for(int i=1;i<=a;i++){
    		System.out.println("HelloWorld");
    	}
    }  
}

在这里插入图片描述

5、写⼀个函数,接收⼀个整数,输出这个整数是⼏位数。

   public class question5 {
	public static void main(String[] args) {
		 Scanner scanner=new Scanner(System.in);
		 System.out.println("请输入一个整数:");
		 int a=scanner.nextInt();
		 out(a);
	}
    public static void out(int a){
    	int tot=0;
    	do {
			tot++;
			a=a/10;
		} while (a!=0);
    	System.out.println(tot);
    }  
}

在这里插入图片描述

6、求⼀个三位数,该三位数等与其每位数字的阶乘之和。

    public class question5 {
	public static void main(String[] args) {
		 Scanner scanner=new Scanner(System.in);
		 System.out.println("请输入一个整数:");
		 long n=scanner.nextLong();
		 out(n);
	}
    public static void out(Long n){
    	   long a=n%10; //个位数 
    	   long b=n/10%10; //⼗位数 
    	   long c=n/100; //百位数
    	   int atot=1,btot=1,ctot=1;
    	   for(int i=1;i<=a;i++){
    		   atot*=i;
    	   }
    	   for(int i=1;i<=b;i++){
    		   btot*=i;
    	   }
    	   for(int i=1;i<=c;i++){
    		   ctot*=i;
    	   }
    	   
    	   System.out.println("个位阶乘 "+atot+" + 十位阶乘"+btot+" + 百位阶乘"+ctot+" + "+n+"="+(atot+btot+ctot+n));
    }  
}

在这里插入图片描述

7、 验证哥德巴赫猜想:任何⼀个⼤于6的偶数,都能分解成两个质数的和。要求输⼊⼀个整数,输
出这个数能被分解成哪两个质数的和。
eg : 14
14=3+11

import java.util.Scanner;
public class GedeBahe {

	public static void main(String[] args) {
	@SuppressWarnings("resource")
	Scanner scanner=new Scanner(System.in);
	System.out.println("输入一个大于6的质数:");
	int a=scanner.nextInt();
	for(int i=2;i<a/2;i++){
		int zs1,zs2;
		if(Pandaun(i)){
			zs1=i;
		}else break;
		for(int j=a/2;j<a;j++){
			if(Pandaun(j)){
				zs2=j;
				if(zs1+zs2==a){
					System.out.println(i+"+"+j+"="+(zs1+zs2));
				}
			}
		}
	}

	}
	public static boolean Pandaun(int num){
		for(int i=2;i<num;i++){
			if(num%i==0)
				return false;
		}
		return true;
	}

}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值