第一题
判断是不是素数
源码
#include<iostream>
using namespace std;
#include<cmath>
int main()
{
int n=0,t=0;
cin>>n;
for(int i=2;i<=sqrt(n);i++)
{ if(n%i==0)
{ cout<<"No";
t++;
break;
}
}
if(t==0) cout<<"YES";
}
第二题
在某段区间上。找出因子和最大的数,并输出该数和该数的因子和(因子不包括本身)
源码
#include<iostream>
using namespace std;
int main()
{
int s=0,e=0;
cin>>s>>e;
int max=0,maxsum=0;
for(int i=s;i<=e;i++)
{ int maxsum1=1,max1=0;
for(int a=2;a<=i-1;a++)
{
if(i%a==0)
{ maxsum1+=a;
}
}
if(maxsum1>=maxsum)
{maxsum=maxsum1;
max=i;
}
}
cout<<max<<" "<<maxsum;
}
第三题
输入一个数m,判断m,3m,7m是不是回文数
(回文数:一个数的倒序等于它本身。eg:77的倒序是77,所以是回文数)
源码
#include<iostream>
using namespace std;
//int main()
bool symm(long n)
{
int a=0;
while(n)
{
a=a*10+n%10;
n/=10;
}
if(a==n)
cout<<n<<" ";
}
int main ()
{
if(symm(i)&&symm(3*i*i)&&symm(7*i))
break;
}