程序设计:求多少种可能性

img

【问题描述】已知手抓饼五块一个,烤面筋三块一个,臭豆腐一块钱一个,现有X块钱,刚好可以买多少手抓饼,烤面筋,臭豆腐,有多少种可能性?

【输入形式】输入金额X,X为整数
【输出形式】输出总共有多少种可能性
【样例输入】

10
【样例输出】

7
【样例说明】

如图。

#include<iostream> 
#include<cmath>
using namespace std;
int main()
{
    int i, j, k,money;
    int sum = 0;
    int a = 1, b = 3,c = 5;
        cin>>money;
    for (i = 0; i <= money ; i++)
    {
        for (j = 0; j <=money/3;j++)
        {
            for (k=0;k<=money/5;k++)
            {
                if (money == a*i + b*j + c*k)
                {
                
                    sum++;
                }
            }
        }
    }
    cout << sum;
    return 0;
}

img


由题可知三种类型的东西里臭豆腐最好配,故从臭豆腐中思考出利用循环解决问题,而且三种东西的各种情况与其价钱的乘积和为输入的钱,故可用三次循环,且三个商品数量须同时考虑,所以循环镶嵌。