连续递增或递减数

分析问题

这是一个计数问题 可以设置一个计数变量 count

要求出从100至 n (n是一个三位数) ,累加和统计所有位数按递增或递减排列的数量

对于递增或递减 拆位后判断即可

建立模型

输入一个三位数 n

遍历从100至 n

如果 百位大于十位 且 十位大于个位 或 百位小于十位 且 十位小于个位

累加后,统计加1

重复执行直到n

编写代码

#include <bits/stdc++.h>
using namespace std;
int main(){
    int n,count=0,sum=0;
    cin>>n;
    for(int i =100;i<=n;i++){
        if(i/100 > i/10%10 && i/10%10 > i%10){
            sum+=i;
            count++;
        }else if(i/100 < i/10%10 && i/10%10 < i%10){
            sum+=i;
            count++; 
        }
    }
    cout<<sum<<endl;
    cout<<count;
    return 0;
}

保存 编译 运行