VinRap 2022-03-23 14:21 采纳率: 75%
浏览 402
已结题

c++建立一个存放素数的类Prime

建立一个存放素数的类Prime,具体要求如下。

①私有数据成员。

int a[25]:存放指定范围内的所有素数。

int n1,n2:存放指定范围的下限和上限

int num:存放素数的个数。

②公有成员函数

Prime(int m1,int m2):构造函数,用参数m1、m2初始化n1、n2,同时初始化num。

~Prime():析构函数,释放创建的对象空间。

void primef():求指定范围内的所有素数,把它们依次存放在数组a中。并将求出的素数个数赋给num。

void show():显示求出的素数的个数及所有的素数,每行输出5个素数。

③在主函数中定义一个Prime类的对象p(100,200),通过p调用成员函数完成求素数及输出素数的工作。

  • 写回答

2条回答 默认 最新

  • 春休夏末 2022-03-23 14:48
    关注

    img

    
    #include <iostream>
    #include <stdio.h>
    #include <stdlib.h>
    
    using namespace std;
    
    class Prime
    {
    public:
        Prime(int m1, int m2){
            n1 = m1;
            n2 = m2;
        }
    
        ~Prime(){
        }
    
        void primef(){
            num = 0;
            for (int i = n1; i <= n2; ++i){
                bool is_prime = true;
                for (int j = 2; j <= i / 2; ++j){
                    if (i % j  == 0){
                        is_prime = false;
                        break;
                    }
                }
                if (is_prime){
                    a[num] = i;
                    num = num + 1;
                }            
            }
        }
    
        void show(){
            cout << "num:" << num;
            for (int i = 0; i < num; ++i){
                if (i % 5 == 0)
                    cout << endl;
            
                cout << a[i] << " ";
            }
        }
    
    private:
        int a[25];
        int n1;
        int n2;
        int num;
    };
    
    int main(){
        Prime p(100, 200);
        p.primef();
        p.show();
        system("pause");
        return 0;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 5月5日
  • 已采纳回答 4月27日
  • 创建了问题 3月23日

悬赏问题

  • ¥15 对于squad数据集的基于bert模型的微调
  • ¥15 为什么我运行这个网络会出现以下报错?CRNN神经网络
  • ¥20 steam下载游戏占用内存
  • ¥15 CST保存项目时失败
  • ¥15 树莓派5怎么用camera module 3啊
  • ¥20 java在应用程序里获取不到扬声器设备
  • ¥15 echarts动画效果的问题,请帮我添加一个动画。不要机器人回答。
  • ¥15 Attention is all you need 的代码运行
  • ¥15 一个服务器已经有一个系统了如果用usb再装一个系统,原来的系统会被覆盖掉吗
  • ¥15 使用esm_msa1_t12_100M_UR50S蛋白质语言模型进行零样本预测时,终端显示出了sequence handled的进度条,但是并不出结果就自动终止回到命令提示行了是怎么回事: