Allen(luhao) 2022-04-25 19:58 采纳率: 100%
浏览 158
已结题

如果一个数本身是素数,并且把最低位删除后得到的数仍是素数、再把最低位删除后得到的数仍是素数……如此往复,直到得到一个一位素数,我们就称它是“幸运素数”。以 233 为例:

问题遇到的现象和发生背景
问题相关代码,请勿粘贴截图
运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果
  • 写回答

2条回答 默认 最新

  • A-Chin 2022-04-25 19:58
    关注
    
     
    #include <iostream>
    using namespace std;
    #include <stdio.h>
    bool pri(int N);
    int main()
    {
        int X;
        cin>>X;
        int i = 1;
        
        int judge = 1;
        
        while(1)
        {
            if (pri(X / i) == false) {
                judge = 0;
                break;
            }
            
            i *= 10;
            
            if (X <= i) break;
        }
        
        if (judge == 1) 
            cout<<X<<"是幸运素数"<<endl;
        else
            cout<<X<<"不是幸运素数"<<endl;
        
        return 0;
    }
    
    bool pri(int N)
    {
        if (N == 1) return true;
            int count = 0;
            for (int j = 2; j < N; ++j)
            {
                if (N % j == 0)
                {
                    count += 1;
                    break;
                }
            }
            if (count == 0)
                return true;
        return false;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 8月18日
  • 已采纳回答 8月10日
  • 创建了问题 4月25日