Bir sayı, basit bir şekilde yazılmışsa, basitleştirilmiş Goodstein formundadır.
b + b + ... + b + c, 0 < c ≤ b
Bir sayının basitleştirilmiş Goodstein dizisi, sayının 1 numaralı basitleştirilmiş Goodstein biçiminde yazılmasıyla başlar, ardından tüm 1'lerin 2 ile değiştirilmesi ve 1'in çıkarılmasıyla başlar. Sonucu 2 numaralı basitleştirilmiş Goodstein formunun yerine tekrar yazın, ardından 2'nin hepsini 3 ile değiştirin ve 1'i çıkarın. vb. 0’a ulaşana kadar.
Programınız pozitif bir tamsayı girişi almak ve Goodstein sırasını yazdırmak / yazdırmak ve sonlandırmaktır. Programınız 100'den küçük sayıları işlemelidir, ancak makul bir süre içinde sonlandırılmayabilir.
Örneğin, girdi olarak 3 verildiğinde, programınızın çıkması gerekir (sağ taraf sadece açıklamadır)
1 + 1 + 1 | 3 = 1 + 1 + 1
2 + 2 + 1 | Change 1's to 2's, then subtract 1. (2 + 2 + 2 - 1 = 2 + 2 + 1)
3 + 3 | 3 + 3 + 1 - 1 = 3 + 3
4 + 3 | 4 + 4 - 1 = 4 + 3
5 + 2 | 5 + 3 - 1 = 5 + 2
6 + 1 | 6 + 2 - 1 = 6 + 1
7 | 7 + 1 - 1 = 7
7 | 8 - 1 = 7
6 | Numbers are now lower than the base, so just keep subtracting 1.
5 |
4 |
3 |
2 |
1 |
0 | End
Boşluk önemli değil.
Kazanma kriteri:
Bu kod golfü . En kısa kod kazanır.