韩信点兵,到底有多少人?

一次阅兵,他要求士兵排成三路纵队,结果末尾多出两人,改排五路纵队,结果末尾多三人在排乘七路中队,结果末尾又余下两人,这时领兵等不下,报告士兵共有。2395人,韩信则说有2333人,谁说的对呢?编写程序来计算。


#include "stdio.h"
/*
一次阅兵,他要求士兵排成三路纵队,结果末尾多出两人,改排五路纵队,结果末尾多三人在排乘七路中队,结果末尾又余下两人,
这时领兵等不下,报告士兵共有。2395人,韩信则说有2333人,谁说的对呢?编写程序来计算。
*/
int main()
{
    int sum=2333;
    if(sum%3==2 && sum%5==3 && sum%7==2)
    {
        printf("韩信对");
    }
    sum=2395;
    if(sum%3==2 && sum%5==3 && sum%7==2)
    {
        printf("领兵对");
    }
    return 0;
   
}

#include <stdio.h>
int main()
{
    int i=2333;
    int flag = 0;
    if(i%3==2 && i%5==3 && i%7==2)
    {
        flag = 1;
        printf("韩信说得对");
    }
    i=2395;
    if(i%3==2 && i%5==3 && i%7==2)
    {
        flag = 1;
        printf("领兵说得对");
    }
    if(flag==0)
        printf("两人说的都不对");
    return 0;
}