实验4-1-5 韩信点兵 (10 分)

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

  • 按从1至5报数,记下最末一个士兵报的数为1;
  • 再按从1至6报数,记下最末一个士兵报的数为5;
  • 再按从1至7报数,记下最末一个士兵报的数为4;
  • 最后按从1至11报数,最末一个士兵报的数为10;
    请编写程序计算韩信至少有多少兵。

输入格式:

本题无输入

输出格式:

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

代码:

# include <stdio.h>
# include <stdlib.h>

int main() {
    
    
	int value,i = 10;
	while (i > 1) {
    
    
		if (i % 5 == 1 && i % 6 == 5 && i % 7 == 4 && i % 11 == 10) {
    
    
			printf("%d",i);
			break;
		}
		i += 1;
	}
	return 0;
}

提交截图:

在这里插入图片描述

解题思路:

有意思奥!这道题用while循环比较合适,当然用for问题也不大,主要是理解题目的意思明显是取余的操作,于是就能快捷的写出程序了!

猜你喜欢

转载自blog.csdn.net/weixin_43862765/article/details/114477250