csharp高级练习题:懒惰直放站【难度:3级】:
在makeLooper()
函数(在Python make_looper
)采用一个字符串(非零长度的)作为参数.它返回的功能.它返回该函数将返回在连续调用字符串的连续字符.一旦它到达最终这将在字符串的开头开始了.
例如:
VAR = ABC makeLooper( 'ABC');
ABC(); //应该返回"A"这个第一个电话
ABC(); //应该返回"B"在这第二个电话
ABC(); //应该返回"C"这个第三个电话
ABC(); //应该在第四调用返回"A"再
ABC = makeLooper 'ABC'
ABC()# 应该返回"A"这个第一个电话
ABC()# 应该返回"B"在这第二个电话
ABC()# 应该返回"C"这个第三个电话
ABC()# 应该在第四调用返回"A"再
FUNC <炭> ABC = Kata.MakeLooper( "ABC");
ABC(); //应该返回"A"这个第一个电话
ABC(); //应该返回"B"在这第二个电话
ABC(); //应该返回"C"这个第三个电话
ABC(); //应该在第四调用返回"A"再
ABC = make_looper( 'ABC')
ABC()# 应该返回"A"这个第一个电话
ABC()# 应该返回"B"在这第二个电话
ABC()# 应该返回"C"这个第三个电话
ABC()# 应该在第四调用返回"A"再
编程目标:
using System;
public class Kata
{
public static Func MakeLooper(string str)
{
// TODO: return a function that loops through 'str' on successive invocations
}
}
测试样例:
namespace Solution
{
using NUnit.Framework;
using System;
[TestFixture]
public class Sample_Tests
{
[Test]
{
Func abc = Kata.MakeLooper("abc");
// Two iterations of looper
// 1
Assert.AreEqual('a', abc());
Assert.AreEqual('b', abc());
Assert.AreEqual('c', abc());
// 2
最佳答案(多种解法):
更多关联题目:
免责申明
本博客所有编程题目及答案均收集自互联网,主要用于供网友学习参考,如有侵犯你的权益请联系管理员及时删除,谢谢
题目收集至https://www.codewars.com/
https://www.codewars.com/kata/lazy-repeater