编辑代码

#include <iostream>
using namespace std;
/*
    循环:
        控制结构,重复功能
    迭代
        操作,使用循环 对某个数据结构重复进行某种操作,直到满足条件或者,结束为止。
    递推
        算法,通过已知条件,逐层推导,直到找到某个答案
    递归
        算法,通过函数自调用的方式实现循环的效果,以及将大问题分解成一个个相同或者类似的小问题,直到找到满足的条件,
        根据问题找条件。

int sums1(int n){
    int sum =0;

    while (n>=0){
        sum += n;
        n--;
    }
    return sum;
}

int sums2( int n){
    if (n<=0) return 0;
    int a =n;
    int sums =a+sums2(--n)
    return sums;
    
}

题目描述
有一堆100多个的零件,
若三个三个数,剩二个;
若五个五个数,剩三个;
若七个七个数,剩五个。
请你编一个程序计算出这堆零件至少是多少个?  
累加求和
int productsNumber(int n){
    if (n%3==2 && n%5==3 && n%7==5) return n;
    return productsNumber(++n);
}

int includeThree(int n, int nums){
    //终点
    if (n>=1000) return nums;
    int t = n;

    while (t!=0){
        if(t%10==3){
            nums++;
            break;
        }
        t /= 10;
    }
    return includeThree(++n, nums);
}
*/
int  integersNumber(int n,int m){
    if (n==1) return m;
    if (n%3==2 && n%5==3 && n%7==2) m++;
    return integersNumber(--n,m);
}
int main() {
    int n;
    cin>>n;
    //起点
    cout<<integersNumber(n,0);
    
	return 0;
}