编写程序,从键盘输入一个整数,判断它能否被 3、5、7 整除,并输出以下信息之一:(1) 能同时被 3、5、7 整除;(2) 能被其中的两个数(显示这两个数)整除;(3) 能被其中的一个数(显示该数)整除;(4) 不能被 3、5、7 任一个整除
需要编写独立函数么
void main()
{
int n;
scanf("%d",&n);
bool b3 = (n%3==0);
bool b5 = (n%5==0);
bool b7 = (n%7==0);
if(b3 && b5 && b7)
printf("%d能被3,5,7同时整除\n",n);
else if(b3 && b5)
printf("%d能被3,5同时整除\n",n);
else if(b3 && b7)
printf("%d能被3,7同时整除\n",n);
else if(b5 && b7)
printf("%d能被5,7同时整除\n",n);
else if(b3)
printf("%d能被3整除\n",n);
else if(b5)
printf("%d能被5整除\n",n);
else if(b7)
printf("%d能被7整除\n",n);
else)
printf("%d能不能被3,5,7整除\n",n);
}
public static void main(String[] args){
int num,count=0 ;
String res="";
Scanner scan = new Scanner(System.in);
System.out.print("请输入数字:");
num = scan.nextInt();
if ( num % 3 == 0 ){
count++;
res=3+" ";
}
if ( num % 5 == 0 ){
count++;
res=5+" ";
}
if ( num % 7 == 0 ){
count++;
res=7+" ";
}
switch (count){
case 3:
System.out.println("能同时被 3、5、7 整除;");
break;
case 2:
System.out.println("能被其中的两个数"+res+"整除;");
break;
case 1:
System.out.println("能被其中的一个数"+res+"整除;");
break;
default:
System.out.println("不能被 3、5、7 任一个整除");
}
}
如有帮助,请采纳
package test; import java.util.LinkedList; import java.util.List; import java.util.Scanner; public class test { public static void main(String[] args) { System.out.println("请输入一个整数"); Scanner scan=new Scanner(System.in); int num=scan.nextInt(); int[] a={3,5,7}; List<Integer> list=new LinkedList<>(); for(int i=0;i<a.length;i++){ if(num%a[i]==0){ list.add(a[i]); } } if(list.size()==1){ System.out.println("能被其中的一个数"+list.get(0)+"整除"); }else if(list.size()==2){ System.out.println("能被其中的两个数"+list.get(0)+","+list.get(1)+"整除"); }else if(list.size()==3){ System.out.println("能同时被 3、5、7 整除"); }else { System.out.println("不能被 3、5、7 任一个整除"); } } }