zoukankan      html  css  js  c++  java
  • NET 已知excel表格前面26个是a到z,27是aa28是ab,以此类推,N是多少

    问题:

    已知excel表格前面26个是a到z,27是aa28是ab,以此类推,N是多少

    代码:

            /// <summary>
            /// 已知excel表格前面26个是a到z,27是aa28是ab
            /// 以此类推,写个算法,N是多少
            /// </summary>
            private static void WriteExcelTitle()
            {
                Console.WriteLine("请输入需要打印的数字:");
                var numStr = Console.ReadLine();
                //  子母集合
                var list = new List<string>
                {
                     "A",
                     "B",
                     "C",
                     "D",
                     "E",
                     "F",
                     "G",
                     "H",
                     "I",
                     "J",
                     "K",
                     "L",
                     "M",
                     "N",
                     "O",
                     "P",
                     "Q",
                     "R",
                     "S",
                     "T",
                     "U",
                     "V",
                     "W",
                     "X",
                     "Y",
                     "Z",
                };
                var pageSize = list.Count;
                //  需要打印的个数
                var numBoo = int.TryParse(numStr, out int num);
                //  有多少次循环: 27=2
                var pageTotal = Math.Ceiling(num / (float)pageSize);
                if (pageTotal > 26)
                {
                    Console.WriteLine($"超过最大数-{26 * 26},请重新输入!");
                    WriteExcelTitle();
                    return;
                }
                //  余数
                var remainder = num % pageSize;
                var sb = new List<string>();
                for (int i = 0; i < pageTotal; i++)
                {
                    var itemIndex = i;
                    //  个数等于总数,余数为0,取最后一个
                    if (remainder == 0)
                    {
                        itemIndex = pageSize - 1;
                    }
                    else if (i == pageTotal - 1)
                    {
                        //  最后一个集合,用余数-1做下标
                        itemIndex = remainder - 1;
                    }
                    var itemStr = list[itemIndex];
                    sb.Add(itemStr);
                }
                Console.WriteLine(string.Join("-", sb));
                WriteExcelTitle();
            }

    效果:

  • 相关阅读:
    移动平台的meta标签-----神奇的功效
    JAVA工程命名规范
    linux 查看tomcat 实时日志
    linux 配置全局jdk环境
    AJAX 前后端交互 验证信息是否正确
    数据库更新DATE类型的时间
    jq 克隆 移除table
    eclipse 安装javaEE插件 和htmlxmljsp编辑器
    oracle 正序 逆序 排序查询
    JQ遍历 input 并修改name属性
  • 原文地址:https://www.cnblogs.com/Cailf/p/11687015.html
Copyright © 2011-2022 走看看