一、题目描述
试定义一个类NUM,求100以内所有的无暇素数。所谓无暇素数是指其本身是素数,其逆序数也是素数。例如,3为素数,且它的逆序数是它本身,所以3是无暇素数;17是素数,17的逆序数是71,17和71都是素数,所以17和71都是无暇素数。具体要求如下:
(1) 私有数据成员
int a[20]; 整型数组,用来存储100以内的无暇素数。
int count; 整型变量,记录找到的无暇素数的个数。
(2) 公有成员函数
NUM(); 构造函数,将count初始化为0。
int reverse( int n); 求取并返回n的逆序数。
int isPrime(int n); 判断n是否为素数,若是素数返回1,否则返回0。
void fun(); 求100以内的所有无暇素数并存储在数组a中。
void print(); 输出100以内的无暇素数的总个数和每个无暇素数。
(3) 在主函数中对NUM类进行测试。
count=13
2 3 5 7 11 13 17 31 37 71 73 79 97
二、代码实现
#include<iostream>