项目一
#include<iostream.h>
int isprimer(int n)
{
int a,j;
a=n;
for(j=2;j<n;j++)
if(n%j==0)
{
a++;
}
return a;
}
int ispalindrome(int k)
{
int b,c,e,v,z,s;
if(k<10)
e=1;
if(k>10&&k<100)
{
v=k%10;
z=(k-v)/10;
if(v==z)
e=1;
else e=0;
}
if(k>=100)
{
b=k%10;
c=((k-b)%100)/10;
s=(k/100);
if(b==s)
e=1;
else e=0;
}
return e;
}
void main()
{
int n;
cout<<"300以内素数有:";
for(n=1;n<300;n++)
{
int f=isprimer(n);
if(f==n)
{
cout<<n<<" ";
}
}
cout<<endl;
cout<<"300以内回文数有:";
for(n=0;n<300;n++)
{
int m=ispalindrome(n);
if(m==1)
cout<<n<<" ";
}
cout<<endl;
cout<<"300以内回文素数有:";
for(n=1;n<300;n++)
{
int m=ispalindrome(n);
if(m==1)
{
int w=isprimer(n);
if(w==n)
{
cout<<n<<" ";
}
}
}
cout<<endl;
cout<<"300以内逆素数有:";
for(n=1;n<300;n++)
{
int r=isprimer(n);
if(r==n)
{
int t=n%10;
int y=(n-t)/10;
int u=10*t+y;
int p=isprimer(u);
if(p==u)
cout<<r<<" ";
}
}
}
项目三:
<pre class="cpp" name="code">#include<iostream.h>
long fac(int n)
{
long f=1;
for(int i=1;i<=n;i++)
f*=i;
return f;
}
void main()
{
long j,k,a,b;
for(j=100;j<1000;j++)
{
k=j%10;
a=((j-k)%100)/10;
b=(j-k-10*a)/100;
if(j==(fac(k)+fac(a)+fac(b)))
cout<<j;
}
}