控制台程序求助?
编一个程序,从三个红球,五个白球,六个黑球中任意取出八个球,且其中必须有白球,输出所有可能的方案。
以下是引用csharpluntan在2013-7-7 10:57:30的发言:
手工计算得出19种方案,可以和下面的程序比对一下,就会发现其正确性:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace zuhe
{
class Program
{
static void Main(string[] args)
{
//i取白球 j取红球,k取黑球
//sum合计
//count计可能的方案数
int sum = 0;
int count = 0;
Console.WriteLine("从三个红球,五个白球,六个黑球中任意取出八个球,且其中必须有白球,所有可能的方案如下:");
for (int i = 1; i<= 5;i++)
{
for (int j = 0; j <= 3; j++)
{
for (int k = 0; k <= 6; k++)
{
sum = i + j + k;
if (sum == 8)//满足必有一个白球,且个数为8的条件时就计数并输出可能方案。
{
count++;
Console.WriteLine("{0}个白球,{1}个红球,{2}个黑球", i, j, k);
}
}
}
}
Console.WriteLine("总共有{0}种可能方案!", count);
Console.ReadKey();
}
}
}
ok ok了 3q3q
手工计算得出19种方案,可以和下面的程序比对一下,就会发现其正确性:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace zuhe
{
class Program
{
static void Main(string[] args)
{
//i取白球 j取红球,k取黑球
//sum合计
//count计可能的方案数
int sum = 0;
int count = 0;
Console.WriteLine("从三个红球,五个白球,六个黑球中任意取出八个球,且其中必须有白球,所有可能的方案如下:");
for (int i = 1; i<= 5;i++)
{
for (int j = 0; j <= 3; j++)
{
for (int k = 0; k <= 6; k++)
{
sum = i + j + k;
if (sum == 8)//满足必有一个白球,且个数为8的条件时就计数并输出可能方案。
{
count++;
Console.WriteLine("{0}个白球,{1}个红球,{2}个黑球", i, j, k);
}
}
}
}
Console.WriteLine("总共有{0}种可能方案!", count);
Console.ReadKey();
}
}
}