目录
1881
循环输出
1~100
之间的每个数
1882 循环输出100~1
之间的每个数
1696 请输出1~n
之间所有的整数
1697 请输出n~1
之间所有的整数
1698 请输出带有特殊尾数的数
1699 输出是2
的倍数,但非
3
的倍数的数
1700 请输出所有的2
位数中,含有数字
2
的整数
1701 请输出所有的3
位对称数
1711 输出满足条件的整数1
1712 输出满足条件的整数2
1713 输出满足条件的整数3
1714 输出满足条件的整数4
1715 输出满足条件的整数5
1721 输出个位为5
或者个位为
8
数
1722 输出两位的巧数
1017 求零件个数
1021 求数II
1058 求出100
至
999
范围内的所有水仙花数。
1059 求数
1264 4位反序数
1266 求最大数
1392 回文偶数?
1447 统计4
位的回文数
1466 等差数
1737 奇怪的数?
1746 能被2
、
3
、
5
、
7
中至少
2
个数整数的数
1748 山形数
1861 整除问题
1863 特殊的数字四十
1085 寻找雷劈数
1090 同因查
1392 -
回文偶数?
题目描述
小明发现有一类数非常有趣,他们正过来读和反过来读是一样的,比如:
121
、
202
、
383
等,小明给这
类数起了一个名字,叫做回文数。
请你写程序帮助小明找出所有
3
位的既是回文数,又是偶数的数,比如:
202
就是满足条件的数,而
121
虽然是回文数但不是偶数。
输入
无
输出
所有满足条件的
3
位的回文偶数,每行
1
个。
#include <iostream>
using namespace std;
int main()
{
for(int n = 100;n<=999;n++)
{
int a1,a2,a3,q;
a1 = n/1%10;
a2 = n/10%10;
a3 = n/100%10;
q = a1*100+a2*10+a3;
if(q==n&&n%2==0)
{
cout<<n<<endl;
}
}
return 0;
}
1266 -
求最大数
题目描述
问
555555
的约数中最大的三位数是多少?
输入
无
输出
约数中最大的三位数
#include <iostream>
using namespace std;
int main()
{
int n,a;
a = 555555;
n = 999;
while(a%n!=0)
{
n--;
}
cout<<n;
return 0;
}
1264 - 4
位反序数
题目描述
设
N
是一个四位数,它的
9
倍恰好是其反序数,求
N
。反序数就是将整数的数字倒过来形成的整数。例
如:
1234
的反序数是
4321
。
输入
无
输出
输出
N
这个四位数
#include <iostream>
using namespace std;
int main()
{
int a,n;
n = 1000;
while(n<=9999)
{
int a1,a2,a3,a4;
a1 = n/1%10;
a2 = n/10%10;
a3 = n/100%10;
a4 = n/1000%10;
a = a1*1000+a2*100+a3*10+a4;
if(n*9==a)
{
cout<<n<<endl;
}
n++;
}
return 0;
}
1059 -
求数
题目描述
输出
1—999
中有因数
3
,且至少有一位数字是
5
的数
输入
无
输出
若干个数 每行一个
#include <iostream>
using namespace std;
int main()
{
int n,a1,a2,a3;
n = 1;
while(n<=999)
{
a1 = n/1%10;
a2 = n/10%10;
a3 = n/100%10;
if(n%3==0&&(a1==5||a2==5||a3==5))
{
cout<<n<<endl;
}
n++;
}
return 0;
}
1058 -
求出
100
至
999
范围内的所有水仙花数。
题目描述
所谓水仙花数,就是指各位数字立方之和等于该数的数;
a^3
a
3
称为
a
的立方,即等于
a
×
a
×
a
的值。
例如:因为
153=1^3+5^3+3^3153=13+53+33
,所以
153
是一个水仙花数。
输入
无
输出
若干行,每行一个整数,表示该范围内的所有水仙花数。按从小到大的顺序输出。
#include <iostream>
using namespace std;
int main()
{
int n,a1,a2,a3;
n = 100;
while(n<=999)
{
a1 = n/1%10;
a2 = n/10%10;
a3 = n/100%10;
if(a1*a1*a1+a2*a2*a2+a3*a3*a3==n)
{
cout<<n<<endl;
}
n++;
}
return 0;
}
1021 -
求数
II
题目描述
在
1—500
中,找出能同时满足用
3
除余
2
,用
5
除余
3
,用
7
除余
2
的所有整数
输入
无
输出
若干个数
每行一个
#include <iostream>
using namespace std;
int main()
{
int n,a1,a2,a3;
n = 1;
while(n<=500)
{
if(n%3==2&&n%5==3&&n%7==2)
{
cout<<n<<endl;
}
n++;
}
return 0;
}
1017 -
求零件个数
题目描述
有一堆
100
多个的零件,若三个三个数,剩二个;若五个五个数,剩三个;若七个七个数,剩五个。请
你编一个程序计算出这堆零件至少是多少个?
输入
无
输出
一行,一个整数。
#include <iostream>
using namespace std;
int main()
{
int n,a1,a2,a3;
n = 100;
while(true)
{
if(n%3==2&&n%5==3&&n%7==5)
{
break;
}
n++;
}
cout<<n;
return 0;
}
1722 -
输出两位的巧数
题目描述
巧数指的是这样一种特殊的数,该数的各个位数字之和加上各个位数字之积等于本身的自然数。比如整
数
19
,就是一个巧数,因为
(1+9)+(1*9) = 10 + 9 =19
。
请编程输出所有
2
位的巧数。
输入
无
输出
由小到大输出所有的
2
位巧数,每行
1
个。
#include <iostream>
using namespace std;
int main()
{
for(int n = 10;n<=99;n++)
{
int a1 = n/1%10;
int a2 = n/10%10;
if((a1+a2)+a1*a2==n)
{
cout<<n<<endl;
}
}
return 0;
}
1721 -
输出个位为
5
或者个位为
8
数
题目描述
请从小到大输出
1~n
中所有个位为
5
或者个位为
8
的所有的整数,每行
1
个。
比如,假设
n=20
,那么满足条件的数输出如下:
5
8
15
18
输入
一个整数
n
。
输出
1~n
中所有满足条件的整数。
样例
样例输入
1
:
20
样例输出
1
:
5 8 15 18
样例输入
2
:
30
样例输出
2
:
5 8 15 18 25 28
样例输入
3
:
25
样例输出
3
:
5 8 15 18 25
输入复制
输出复制
说明
#include <iostream>
using namespace std;
int main()
{
int n,a,q;
cin>>n;
q = 1;
while(q<=n)
{
a = q/1%10;
if(a==5||a==8)
{
cout<<q<<endl;
}
q++;
}
return 0;
}
1715 -
输出满足条件的整数
5
题目描述
有这样一个四位数
,
其千位和百位之和为偶数,十位和个位之和为奇数,且前两位之和大于后两位之和,
且含有因数
8
,请输出满足上述条件的整数。
输入
无
输出
输出满足条件的整数,每行一个。
#include <iostream>
using namespace std;
int main()
{
int n,a1,a2,a3,a4,o,j;
n = 1000;
while(n<=9999)
{
a1 = n/1%10;
a2 = n/10%10;
a3 = n/100%10;
a4 = n/1000%10;
o = a4+a3;
j = a2+a1;
if(o%2==0&&j%2==1&&o>j&&n%8==0)
{
cout<<n<<endl;
}
n++;
}
return 0;
}
1714 -
输出满足条件的整数
4
题目描述
输出
1-n
中含有数字
3
或者含有数字
5
,且因数有
2
(即能被
2
整除)的所有整数。(
n < 1000
)
输入
从键盘输入一个整数
n
。
输出
输出满足条件的整数,每行一个
#include <iostream>
using namespace std;
int main()
{
int a,n,a1,a2,a3;
cin>>n;
a = 1;
while(a<=n)
{
a1 = a/1%10;
a2 = a/10%10;
a3 = a/100%10;
if(a%2==0&&(a1==3||a1==5||a2==3||a2==5||a3==3||a3==5))
{
cout<<a<<endl;
}
a++;
}
return 0;
}
1713 -
输出满足条件的整数
3
题目描述
有一个数列,该数列的前
4
个数是:
1 4 7 10
;
请从键盘读入一个正整数
n
,请通过观察前
4
项的规律,输出
1~n
之间所有满足该规律的数字。
输入
在一行输入一个整数
n
。
输出
输出满足题目要求的整数,每行
1
个。
样例
输入复制
10
输出复制
1
4
7
10
#include <iostream>
using namespace std;
int main()
{
int n,a;
cin>>n;
a = 1;
while(a<=n)
{
cout<<a<<endl;
a = a+3;
}
return 0;
}
1712 -
输出满足条件的整数
2
题目描述
有这样的三位数,其百位、十位、个位的数字之和为偶数,且百位大于十位,十位大于个位,请输出满
所有满足条件的整数。
输入
无
输出
输出满足条件的整数,每行一个。
#include <iostream>
using namespace std;
int main()
{
int a,a1,a2,a3;
a = 100;
while(a<=999)
{
a1 = a/1%10;
a2 = a/10%10;
a3 = a/100%10;
if((a1+a2+a3)%2==0&&a3>a2&&a2>a1)
{
cout<<a<<endl;
}
a++;
}
return 0;
}
1711 -
输出满足条件的整数
1
题目描述
有这样的两位数,其十位上的数字比个位上的数字要大,且十位和个位上的数字之和为偶数,请找出所 有的满足条件的2
位数。
输入
无
输出
输出满足条件的
2
位数,每行一个
样例
输入复制
输出复制
20
31
40
42
51
53
60
62
64
71
73
75
80
82
84
86
91
93
95
97
#include <iostream>
using namespace std;
int main()
{
int a,a1,a2;
a = 10;
while(a<=99)
{
a1 = a/1%10;
a2 = a/10%10;
if((a1+a2)%2==0&&a2>a1)
{
cout<<a<<endl;
}
a++;
}
return 0;
}
1701 -
请输出所有的
3
位对称数
题目描述
请输出所有的
3
位对称数,对称数指的是一个整数
n
正过来和倒过来是一样的,比如:
101
、
121
、
282……
请从小到大输出符合条件的
3
位对称数,每行
1
个。
输入
无
输出
从小到大按题意输出符合条件的数,每行
1
个。
#include <iostream>
using namespace std;
int main()
{
int a,a1,a2,a3,n;
a = 100;
while(a<=999)
{
a1 = a/1%10;
a2 = a/10%10;
a3 = a/100%10;
n = a1*100+a2*10+a3;
if(a==n)
{
cout<<a<<endl;
}
a++;
}
return 0;
}
1700 -
请输出所有的
2
位数中,含有数字
2
的整数
题目描述
请输出所有的
2
位数中,含有数字
2
的整数有哪些,每行
1
个,按照由小到大输出。
比如:
12
、
21
、
22
、
23……
都是含有数字
2
的整数。
输入
无
输出
按题意要求由小到大输出符合条件的整数,每行
1
个。
#include <iostream>
using namespace std;
int main()
{
int a,a1,a2;
while(a<=99)
{
a1 = a/1%10;
a2 = a/10%10;
if(a1==2||a2==2)
{
cout<<a<<endl;
}
a++;
}
return 0;
}
1699 -
输出是
2
的倍数,但非
3
的倍数的数
题目描述
请从键盘读入一个整数
n
,输出
1~n
中所有是
2
的倍数,但非
3
的倍数的数,每行
1
个。
比如,读入一个整数
10
,输出结果如下:
2
4
8
10
输入
一个整数
n
。
输出
按要求输出
1~n
中满足条件的整数,每行
1
个。
#include <iostream>
using namespace std;
int main()
{
int a,n;
a = 1;
cin>>n;
while(a<=n)
{
if(a%2==0&&a%3!=0)
{
cout<<a<<endl;
}
a++;
}
return 0;
}
1698 -
请输出带有特殊尾数的数
题目描述
请输出
1~n
中所有个位为
1
、
3
、
5
、
7
中任意一个数的整数,每行
1
个。
(n < 1000)
比如,假设从键盘读入
20
,输出结果如下:
1
3
5
7
11
13
15
17
输入
一个整数
n
。
输出
输出满足条件的数,每行
1
个。
#include <iostream>
using namespace std;
int main()
{
int a,n,a1,a2,a3;
cin>>n;
a = 1;
while(a<=n)
{
a1 = a/1%10;
a2 = a/10%10;
a3 = a/100%10;
if(a1==1||a1==3||a1==5||a1==7)
{
cout<<a<<endl;
}
a++;
}
return 0;
}
1697 -
请输出
n~1
之间所有的整数
题目描述
从键盘读入一个整数
n
,请输出
n~1
之间所有的整数,每行输出
1
个。
比如,假设读入
n=5
,输出结果如下:
5
4
3
2
1
输入
一个整数
n
。
输出
输出
n~1
之间所有的数,每行
1
个。
#include <iostream>
using namespace std;
int main()
{
int a,n;
cin>>n;
a = n;
while(a>=1)
{
cout<<a<<endl;
a--;
}
return 0;
}
1696 -
请输出
1~n
之间所有的整数
题目描述
从键盘读入一个整数
n
,请循环输出
1~n
之间所有的整数,每行输出
1
个。
比如,假设
n=5
,那么输出结果如下:
1
2
3
4
5
输入
一个整数
n
。
输出
输出
1~n
之间所有的整数。
#include <iostream>
using namespace std;
int main()
{
int a,n;
cin>>n;
a = 1;
while(a<=n)
{
cout<<a<<endl;
a++;
}
return 0;
}
1882 -
循环输出
100~1
之间的每个数
题目描述
请循环输出
100~1
之间的每个整数,输出时每行输出
1
个数,比如,输出结果的前
10
个数是这样的:
100
99
98
97
96
95
94
93
92
91
...
输入
无
输出
按要求输出
100~1
之间的每个数。
#include <iostream>
using namespace std;
int main()
{
int a;
a = 100;
while(a>=1)
{
cout<<a<<endl;
a--;
}
return 0;
}
1881 -
循环输出
1~100
之间的每个数
题目描述
请循环输出
1~100
之间的每个整数,输出时每行输出
1
个数,比如,输出结果的前
10
个数是这样的:
1
2
3
4
5
6
7
8
9
10
...
输入
无
输出
按要求输出
1~100
之间的每个数。
#include <iostream>
using namespace std;
int main()
{
int a;
a = 1;
while(a<=100)
{
cout<<a<<endl;
a++;
}
return 0;
}
1863 -
特殊的数字四十
题目描述
1234
是一个非常特殊的四位数,因为它的各位数之和为
10
,编程求所有这样的四位整数。
输入
无
输出
按从小到大的顺序输出满足条件的四位数。每个数字占用一行。
#include <iostream>
using namespace std;
int main()
{
int a,a1,a2,a3,a4;
a = 1000;
while(a<=9999)
{
a1 = a/1%10;
a2 = a/10%10;
a3 = a/100%10;
a4 = a/1000%10;
if(a1+a2+a3+a4==10)
{
cout<<a<<endl;
}
a++;
}
return 0;
}
1861 -
整除问题
题目描述
编写一个程序,输入三个正整数
min
、
max
和
factor
,然后对于
min
到
max
之间的每一个整数(包括
min
和
max
),如果它能被
factor
整除,就把它打印出来。
输入
输入只有一行,包括三个整数
min
、
max
和
factor
。
输出
输出只有一行,包括若干个整数,数与数之间用空格隔开。
#include <iostream>
using namespace std;
int main()
{
int mi,ma,f,a;
cin>>mi>>ma>>f;
if(mi>ma)
{
int asdfghjklp = mi;
mi = ma;
ma = asdfghjklp;
}
a = mi;
while(a<=ma)
{
if(f%a==0)
{
cout<<a<<endl;
}
a++;
}
return 0;
}
1748 -
山形数
题目描述
山形数指的是一个三位数,中间的十位比两边的个位和百位都大,类似山的形状。
请编程输出所有的山形数。
输入
无
输出
从小到大输出所有的山形数,每行
1
个。
来源
简单循环
#include <iostream>
using namespace std;
int main()
{
int a,a1,a2,a3;
a = 100;
while(a<=999)
{
a1=a/1%10;
a2=a/10%10;
a3=a/100%10;
if(a2>a1&&a2>a3)
{
cout<<a<<endl;
}
a++;
}
return 0;
}
1746 -
能被
2
、
3
、
5
、
7
中至少
2
个数整数的数
题目描述
请输出
1~n
中至少能够被
2
、
3
、
5
、
7
中两个及两个以上的数整除的数?
比如:
30
,就是能够被
2
、
3
、
5
、
7
中的
3
个数整除,就是符合条件的数。
输入
一个整数
n
(
n<=200
)
输出
输出
1~n
中满足条件的数,每行
1
个。
#include <iostream>
using namespace std;
int main()
{
int n,a;
cin>>n;
a = 1;
while(a<=n)
{
if((a%2==0&&2%3==0)||(a%2==0&&a%5==0)||(a%2==0&&a%7==0)||(a%3==0&&a%5==0)||(a%3==0&&a%7==0)||(a%5==0&&a%7==0)||(a%2==0&&a%3==0&&a%5==0)||(a%3==0&&a%2==0&&a%7==0)||(a%3==0&&a%5==0&&a%7==0)||(a%2==0&&a%5==0&&a%7==0)||(a%2==0&&a%3==0&&a%5==0&&a%7==0))
{
cout<<a<<endl;
}
a++;
}
return 0;
}
1737 -
奇怪的数?
题目描述
小明最近刚刚学习数学,回家后老师布置了一道题目:要求小明找出满足条件的奇怪整数:
A
、该数为四位数
B
、该数的千位和十位对调,百位和个位对调后,仍然等于本身
C
、该数为奇数。
你能帮助小明找到满足以上条件的奇怪整数吗?
输入
输入一个整数
n(n >=1000)
输出
n
以内的奇怪整数,每行一个
#include <iostream>
using namespace std;
int main()
{
int a,n,a1,a2,a3,a4,q;
cin>>n;
a = 1000;
while(a<=n)
{
a1 = a/1%10;
a2 = a/10%10;
a3 = a/100%10;
a4 = a/1000%10;
q = a2*1000+a1*100+a4*10+a3;
if(a==q&&a%2==1)
{
cout<<a<<endl;
}
a++;
}
return 0;
}
1447 -
统计
4
位的回文数
题目描述
回文数指的是正过来读和反过来读都是一样的数,比如
1661
、
2772
都是回文数,请你编程找出所有的
4
位的回文数。
输入
无
输出
由小到大输出所有的
4
位回文数,每行
1
个。
#include <iostream>
using namespace std;
int main()
{
int a,a1,a2,a3,a4,q;
a = 1000;
while(a<=9999)
{
a1 = a/1%10;
a2 = a/10%10;
a3 = a/100%10;
a4 = a/1000%10;
q = a1*1000+a2*100+a3*10+a4;
if(a==q)
{
cout<<a<<endl;
}
a++;
}
return 0;
}
1090 -
同因查找
题目描述
求出
10
至
1000
之内能同时被
2
、
3
、
7
整除的数,并输出。
每行一个。
输入
无
输出
按要求输出满足条件的数,每行
1
个
#include <iostream>
using namespace std;
int main()
{
for(int a = 10;a<=1000;a++)
{
if(a%2==0&&a%3==0&&a%7==0)
{
cout<<a<<endl;
}
}
return 0;
}