C++ 三七二十一代码结果不是自己想要的答案,不知道哪里错了
某天,诺诺看到三七二十一(3721)数,觉得很神奇,这种数除以3余2,而除以7则余1。例如8是一个3721数,因为8除以3余2,8除以7余1。现在给出两个整数a、b,求区间[a,b]中的所有3721数,若区间内不存在3721数则输出“none”。
输入格式:
首先输入一个正整数T,表示测试数据的组数,然后是T组测试数据。每组测试输入两个整数a,b(1≤a
输出格式:
对于每组测试,在一行上输出区间[a,b]中所有的3721数,每两个数据之间留一个空格。如果给定区间不存3721数,则输出“none”(引号不必输出)。
for循环写的不对
for(j=a;j<=b;j++)
区间是a,b
不应该是j = a ; j <= b; j++ 吗?
而且c++也没这种写法 a<=j<=b
#include
using namespace std;
int main()
{
int t;
bool kp=false;
cin>>t;
for(int i=1;i<=t;i++)
{
int a,b;
cin>>a>>b;
for(a;a<=b;a++)//查找【a,b】区间内的3721数 ,由于a b 每个循环都会更新,因此直接当循环变量
{
if(a%3==2&&a%7==1)
{
kp=true;//标记,表示已查找到3721数
cout<<a<<" ";
}
}
if(kp==false)
{
cout<<"none"<<endl;
}
else cout<<endl;
kp=false;//更新标记
}
}