gpt4 book ai didi

c# - 在 C# 中增加特定模式中的字符

转载 作者:行者123 更新时间:2023-11-30 22:26:47 24 4
gpt4 key购买 nike

程序应该接受一个参数 N 并打印出 N + 1 行。我必须输出这样的东西。

这是我必须在 N = 5 时得到的输出

A //Increment by 0

AB //Increment by 1

ACE //Increment by 2

ADGJ //Increment by 3

AEIMQ //Increment by 4

该算法使用 N 作为每次添加之间要跳过的字符数。所以在 N=3 时,是 A 跳 3 到 D,跳 3 到 G,跳 3 到 J。

当程序用完大写字符时(即当 N 太大时),它应该以小写字符开头,如果用完小写字符,则应该再次以大写字符开头,依此类推。我是编程新手。我真的不知道从哪里开始。我已经在循环中工作了一段时间,但仍然不知道究竟是什么。

最佳答案

这是另一种使用 Char[]moduloStringBuilderfor-loop 的方法通过 n 提高效率:

readonly static Char[] letters = 
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".ToCharArray();

static String appendChars(int n)
{
int length = n + 1;
StringBuilder sBuilder = new StringBuilder("A", length);

for (int i = n; sBuilder.Length < length; i += n)
{
Char nextChar = letters[i % letters.Length];
sBuilder.Append(nextChar);
}

return sBuilder.ToString();
}

测试您的示例数据:

int n = 5;
IEnumerable<String> allWords = Enumerable.Range(0, n).Select(i => appendChars(i));
Console.Write(string.Join(Environment.NewLine, allWords));

输出:

A
AB
ACE
ADGJ
AEIMQ

这是演示:http://ideone.com/0sspY

关于c# - 在 C# 中增加特定模式中的字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11608281/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com