欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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

程序员文章站 2023-11-06 20:26:40
问题: 已知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();
        }

效果:

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