当前位置:编程学习 > C#/ASP.NET >>

帮帮忙 这个应该怎么算

假如有 1  3  10  20   30  这几个数

我要求n   25<n<30  n必须是由上面这些数字组成 要把所有符合条件的组合都输出 不能重复 该怎么做啊

比如输出  
20,3,3
20,3,3,3
10,10,3,3,
...... --------------------编程问答-------------------- 看了半天 没看懂LZ说什么 --------------------编程问答-------------------- 天书 --------------------编程问答-------------------- 看懂了,几个数的和=n
25<n<30

问有几种组合 --------------------编程问答-------------------- 假设 1  3  10  20   30  这些数字为数组int[] A
新建数组int[] B
新建数组string[] C
1.把小于25的数字放入 数组B`` 
2.然后遍历B``然后写个单独的递归方法``方法是: B中的每个数字跟A中的每个数字相加``如果相加结果大于25且小于30``(这里还需要个临时变量string tempstring来保存相加的数字,在遍历循环中声明``)则将tempstring保存到数组C``且将结果继续递归(与A中数字相加)``否则跳出``
3.输出数组string[] C --------------------编程问答-------------------- 能不能帮我写出来啊 我写出来老是死循环 -_-~ 拜托拜托 --------------------编程问答-------------------- using System;
using System.Collections.Generic;
using System.Text;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            for (int a = 0; a < 30; a++)
            {
                for (int b = 0; b < 10; b++)
                {
                    for (int c = 0; c < 3; c++)
                    {
                        for (int d = 0; d < 2; d++)
                        {
                            int n = 1 * a + 3 * b + 10 * c + 20 * d;
                            if (n > 25 && n < 30)
                            {
                                if (a != 0)
                                    for (int i = 0; i < a; i++)
                                        Console.Write("1,");
                                if (b != 0)
                                    for (int i = 0; i < b; i++)
                                        Console.Write("3,");
                                if (c != 0)
                                    for (int i = 0; i < c; i++)
                                        Console.Write("10,");
                                if (d != 0)
                                    for (int i = 0; i < d; i++)
                                        Console.Write("20,");
                                Console.Write("\n");
                            }
                        }
                    }
                }
            }
            Console.Read();
           
        }

    }
}
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,