C# で前前前世

2021/09/02に公開

Delphi で前前前世 - Qiita を C# でやってみました。拡張メソッドがあるので簡単ですね。

using System;

namespace ConsoleApp1
{
	static class Program
	{
		static void Main() => then().then().then().();

		public static string then() => "".then();

		public static string then(this string prev) => prev + "前";

		public static void(this string prev) => Console.WriteLine(prev + "世");
	}
}

出力

前前前世

踊り字を使ってみる。

using System;
using System.Linq;

namespace ConsoleApp1
{
	static class Program
	{
		static void Main() => then().then().then().();

		public static string then() => "".then();

		public static string then(this string prev) => prev + (!string.IsNullOrEmpty(prev) && "前々".Contains(prev.Last()) ? "々" : "前");

		public static void(this string prev) => Console.WriteLine(prev + "世");
	}
}

出力

前々々世

まあ Console.WriteLine をこんなところに入れてる時点で気持ち悪いんですが。

執筆日: 2020/07/09

GitHubで編集を提案

Discussion