问题及代码:
/*
*Copyright (c)2014,烟台大学计算机与控制工程学院
*All rights reserved.
*文件名称:blackbeans.cpp
*作 者:单昕昕
*完成日期:2014年12月12日
*版 本 号:v1.0
*
*问题描述:传说中有这样一堆黑豆,它的数量是不一定的,会不断的变化,没有人可以数清他的数量。
智者Radish一直想数清黑豆的数量,但是他一直找不到答案。。。。
有一天,智者梦见了一只甲鱼驮着一个女神向他飘来,然后女神告诉他,黑豆的变化是有规律的。
说,黑豆之数,三三数之剩二,五五数之剩三,七七数之剩二。ps:用三去除余二,用五去除余三,用七去除余二
说完飘然而去,Radish恍然大悟,终于总结出计算黑豆数量的公式,他把此公式命名为“黑豆式”。
那么现在问题来了,请你根据“黑豆式”计算出N(>=1000)之内的黑豆的最大数量。
。
*程序输出:N(>=1000)之内的黑豆的最大数量。
*/
#include<iostream>
#include <cstdio>
using namespace std;
int main()
{
int i,s,t,a,b,c,n;
cin>>n;
for(i=0; i<n; ++i)
{
if((i%3==2)&&(i%5==0)&&(i%7==0))
{
a=i;
}
if((i%5==3)&&(i%3==0)&&(i%7==0))
{
b=i;
}
if((i%7==2)&&(i%5==0)&&(i%3==0))
{
c=i;
}
s=a+b+c;
if(s<n)
t=s;
}
cout<<t;
return 0;
}
运行结果:
知识点总结:
根据题目要求用if语句判断求解。
学习心得:
注意为了要输出最大值,最后要加上一个判断语句。