周赛(1)——素数

本文提供了一段C++代码,用于判断输入整数是否为素数及其逆置数是否同样为素数。通过简单的数学运算实现逆置,并利用循环进行素数验证。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

http://acm.sdut.edu.cn/sdutoj/showproblem.php?pid=1445&cid=1127


#include "iostream"
#include "cmath"
using namespace std;
bool isprime(int n)
{
if (2==n)
return true;
else if(0>n) return false;
int i;
for (i=2;i<=sqrt(n);++i)
{
if(0==n%i)
return false;
}
return true;
}
int main()
{
int n;
int backing;
while(cin>>n&&n!=0)
{
{
if(n<10&&n>0) backing=n;
if(n>=10&&n<100) backing=n/10+10*(n%10);
if(n>=100&&n<1000) backing=n/100+100*(n%10)+(n%100-n%10);
if(n>=1000&&n<10000) backing=n/1000+10*(n%100-n%10)+(n%1000-n%100)/10+1000*(n%10);
}
if(n==1)cout<<"False"<<endl;
else if(isprime(n)&&isprime(backing)) cout<<"True"<<endl;
else if(!(isprime(n)&&isprime(backing))) cout<<"False"<<endl;
else if(n<0) cout<<"False"<<endl;
}
}


说实话这个逆置的方法实在是笨的可以。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值