qq_62227344 2021-11-26 08:59 采纳率: 100%
浏览 80
已结题

丑数的个数 如果一个正整数分解后的的所有素因子最多只有2,3,5,7四种,则这个数称为丑数

题目描述
如果一个正整数分解后的的所有素因子最多只有2,3,5,7四种,则这个数称为丑数,比如,1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 12, 14, 15, 16, 18, 20, 21, 24, 25, 27就是前20个丑数。请编程判断一个数是否是丑数。

输入描述
输入数据首先包含一个整数N(1<=N<=10),表示给出的正整数的个数,然后是N个32位的正整数。

输出描述
请编程输出给出的这些数中丑数的个数。

输入样例
5 2 9 11 65 100

输出样例
3

用户代码

  • 写回答

2条回答 默认 最新

  • qq_54265588 2021-11-26 16:42
    关注

    package Sunumber;

    import java.util.Scanner;

    /*
    auther:fjh201831064110
    */
    public class SuNumber {

    public static void main(String[] args) {
        //输入正整数个数
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入正整数个数N:");
        int n = sc.nextInt();
        //通过数组输入n个正整数
        System.out.println("输入正整数n");
        Scanner nb = new Scanner(System.in);
        int[] b=new int[n];
        for(int i=0;i<b.length;i++){
            b[i]=nb.nextInt();}
        //对每个正整数分解处理
        int  j = 0;
        for(int i=0;i<n;i++) {
            int num = b[i],x = 2;
            //利用循环判断是否为丑数,若不为丑数,j+1
            do {
                if (num % x == 0) {
                    if (x != 2 && x != 3 && x != 5 && x != 7) {
                        j++;
                        break;
                    }
                    num = num / x;
                } else {
                    x++;
                }
            }while (num>1);
        }
    
        j=n-j;
        System.out.println("共有"+j+"个丑数");
    }
    

    }
    功能是完成了的,只是输出样式和你的不一样,稍微改改就行了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 12月7日
  • 已采纳回答 11月29日
  • 创建了问题 11月26日

悬赏问题

  • ¥15 下图接收小电路,谁知道原理
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度
  • ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测
  • ¥15 ETLCloud 处理json多层级问题
  • ¥15 matlab中使用gurobi时报错
  • ¥15 这个主板怎么能扩出一两个sata口
  • ¥15 不是,这到底错哪儿了😭
  • ¥15 2020长安杯与连接网探