[PTA]实验4-1-5 韩信点兵

Spring-_-Bear 的 CSDN 博客导航

在中国数学史上,广泛流传着一个 “韩信点兵” 的故事:韩信是汉高祖刘邦手下的大将,他英勇善战,智谋超群,为汉朝建立了卓越的功劳。据说韩信的数学水平也非常高超,他在点兵的时候,为了知道有多少兵,同时又能保住军事机密,便让士兵排队报数:

按从 1 至 5 报数,记下最末一个士兵报的数为 1;
再按从 1 至 6 报数,记下最末一个士兵报的数为 5;
再按从 1 至 7 报数,记下最末一个士兵报的数为 4;
最后按从 1 至 11 报数,最末一个士兵报的数为 10;

请编写程序计算韩信至少有多少兵。

输入格式:

本题无输入

输出格式:

输出韩信至少拥有的士兵人数。

来源:

来源:PTA | 程序设计类实验辅助教学平台
链接:https://pintia.cn/problem-sets/13/exam/problems/439

提交:

在这里插入图片描述

题解:

#include<stdio.h>

int main(void) {
    int number = 1;
    while (1) {
        /*
         * 按从 1 至 5 报数,记下最末一个士兵报的数为 1;
         * 再按从 1 至 6 报数,记下最末一个士兵报的数为 5;
         * 再按从 1 至 7 报数,记下最末一个士兵报的数为 4;
         * 最后按从 1 至 11 报数,最末一个士兵报的数为 10;
         */
        if (number % 5 == 1 && number % 6 == 5 && number % 7 == 4 && number % 11 == 10) {
            printf("%d\n", number);
            break;
        }

        number++;
    }

    return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

春天熊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值