您的位置:首页 > 编程语言 > C语言/C++

C++实验4——穷举法解决组合问题

2016-04-21 09:43 337 查看
1.百钱百鸡问题
/*
* 文件名称:百钱百鸡问题
* 作    者:张绮雯
* 完成日期:2016年4月21日
* 版 本 号:v1.0
* 对任务及求解方法的描述部分:使用for语句
* 输入描述:x,y,z
* 问题描述:使用for语句计算三种鸡的个数
* 程序输出:三种鸡的个数
* 问题分析:
* 算法设计:使用for语句循环
*/
#include <iostream.h>
void main()
{
int n=1,x,y,z;
cout<<"百钱买百鸡的方案有:"<<endl;
for(x=0;x<=20;x++)
for(y=0;y<=33;y++)
for(z=0;z<=100;z++)
if(x+y+z==100&&5*x+3*y+z/3==100&&z%3==0)
cout<<n++<<".鸡翁"<<x<<"只,鸡母"<<y<<"只,鸡雏"<<z<<"只\n";
}
运行结果:2.三色球问题
/*
* 文件名称:三色球问题
* 作    者:张绮雯
* 完成日期:2016年4月21日
* 版 本 号:v1.0
* 对任务及求解方法的描述部分:使用for语句
* 输入描述:x,y,z
* 问题描述:使用for语句计算任取8个球共有多少种不同的颜色搭配
* 程序输出:颜色搭配的方案
* 问题分析:
* 算法设计:使用for语句循环
*/
#include<iostream>
using namespace std;
int main()
{
int i,j,m,count=0;
for(i=0; i<=3; i++)
for(j=0; j<=3; j++)
for(m=2; m<=6; m++)
if(i+j+m==8)
{
count++;
cout<<"方案"<<count<<":"<<"红球:"<<i<<"白球:"<<j<<"黑球:"<<m<<endl;
}
return 0;
}
运行结果:
                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: