zoukankan      html  css  js  c++  java
  • 取一个任意数所有 和的等式

    前几天,同学给出了一个算法题

     随便输入一个数,输出 相加等于这个数的所有等式,而且加数不能重复

      例如:6

      6=1+5;

      6=2+4;

      6=1+2+3;

      --------------------------------

      程序如下:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;

    namespace _111301
    {
        class Program
        {
            static int total = 0;
            static void Main(string[] args)
            {
                Console.WriteLine("请输入数字:");
                int Num = 0;
                Num =Convert.ToInt32(Console.ReadLine().ToString());
                Console.WriteLine("-----------------等式如下:-------------------");
                for (int i = 1; i < (Num % 2 == 0 ? Num / 2 : Num / 2 + 1);i++ )
                {
                    PrintNum(Num.ToString() + "=" + i.ToString(), i, i, Num);
                }
                Console.WriteLine("------------共计:"+total.ToString()+"个-------------------------");
                Console.ReadKey();
            }
            /// <summary>
            /// 打印数字
            /// </summary>
            /// <param name="preInfo">此数字前面数字</param>
            ///  /// <param name="preInfo">此前数字和</param>
            /// <param name="flagNum">当前标志数字</param>
            /// <param name="maxNum">输入数字</param>
            private static void PrintNum(string preInfo,int preTotal,int flagNum,int maxNum)
            {
                Console.WriteLine(preInfo + "+" + (maxNum - preTotal).ToString());
                total++;
                for (int i = flagNum + 1; i <= (maxNum - preTotal - 1) / 2; i++)
                {
                    string tempPreInfo = preInfo;
                    int tempPreTotal = preTotal;
                    tempPreTotal += i;
                    tempPreInfo += "+" + i.ToString();
                    if (i<=maxNum-preTotal-1)
                    {
                        PrintNum(tempPreInfo, tempPreTotal, i, maxNum);
                    }else{
                        continue;
                    }
                }

            }
        }
    }

    ---------------------------------------------------------------------------

  • 相关阅读:
    记录-java(jxl) Excel导入数据库
    记录--Gson、json转实体类、类转json
    记录--java获取网络资源(图片、音频等)保存本地
    记录--指定路径复制文件到另一个路径
    记录-java执行请求的URL
    记录-Hibernate+servlet实现简单的增、删、查、改
    我的学习之路_第二十八章_JQuery 和validator插件
    我的学习之路_第二十七章_jQuery
    我的学习之路_第二十六章_javaScript(2)
    我的学习之路_第二十五_javaScript
  • 原文地址:https://www.cnblogs.com/xianzuoqiaoqi/p/1605315.html
Copyright © 2011-2022 走看看