题目描述
Peter同学刚刚在学校学习了等差数列的概念。等差数列,指的是一组数,这些数连续2个数的差值是相等的,比如:1 2 3,1 3 5,8 5 2,这些数的连续两个数的差值都是相等的。
Peter根据等差数列的概念,自己定义了一个等差数的概念,这种数如果连续2位的差值相等,Peter就认为它是等差数,比如:123,159,13579,852等这些数都是等差数。
请你编程帮助Peter同学找出从m~n之间,有哪些等差数?
输入
两个整数m和n(m<=n,且m和n都是100~9999之间的数)
输出
输出m~n之间的等差数,每行1个
样例输入 Copy
900 2000
样例输出 Copy
951 963 975 987 999 1111 1234 1357
#include <iostream>
using namespace std;
int main()
{
int m, n, i;
cin >> m >> n;
for (i = m; i <= n; i++)
{
int a = i % 10;//个位
int b = i / 10 % 10;//十位
int c = i / 100 % 10;//百位
int d = i / 1000;//千位
if (((d == 0) && a - b == (b - c)) || ((d != 0) && (a - b) == (b - c)&& (b - c) == (c - d)))//不能连等
{
cout << i << endl;
}
}
return 0;
}
不可以连等