Ich finde es faszinierend, wie sehr sich die Buchstaben "H" und "I" ähneln. "H" ist ein horizontaler Strich, der von zwei vertikalen Strichen umgeben ist; "I" ist ein vertikaler Strich, der von zwei horizontalen Strichen umgeben ist (abhängig von Ihrer Schriftart). Ich wette, das könnte verschachtelt sein ... Weißt du, woran mich das erinnert? Fraktale !!!
Definieren wir die "IHIH" -Pyramide wie folgt: Die erste Iteration ist diese ASCII-Darstellung des Buchstabens "I":
---
|
---
Die nächste Iteration weist auf beiden Seiten einen vertikalen Strich auf.
| |
|---|
| | |
|---|
| |
Wenn Sie das "I" in der Mitte als einen einzelnen horizontalen Strich betrachten, ist diese zweite Iteration im Grunde ein "H". Die dritte Iteration fügt oben und unten einen horizontalen Strich hinzu
-------
| |
|---|
| | |
|---|
| |
-------
Wenn Sie das "H" in der Mitte als einen einzelnen vertikalen Strich betrachten, ist diese Iteration im Grunde ein "I". Dieses Muster setzt sich fort und wechselt bei jeder Iteration zwischen "H" und "I". Als Referenz sind hier die ersten 6 Iterationen:
1:
---
|
---
2:
| |
|---|
| | |
|---|
| |
3:
-------
| |
|---|
| | |
|---|
| |
-------
4:
| |
|-------|
| | | |
| |---| |
| | | | |
| |---| |
| | | |
|-------|
| |
5:
-----------
| |
|-------|
| | | |
| |---| |
| | | | |
| |---| |
| | | |
|-------|
| |
-----------
6:
| |
|-----------|
| | | |
| |-------| |
| | | | | |
| | |---| | |
| | | | | | |
| | |---| | |
| | | | | |
| |-------| |
| | | |
|-----------|
| |
Die Herausforderung:
Schreiben Sie ein Programm oder eine Funktion, die die N-te Iteration der IHIH-Pyramide und einen optionalen Zeilenumbruch ausgibt. Ihre Eingabe ist eine einzelne positive Ganzzahl in dem von Ihnen gewünschten vernünftigen Format. Sie müssen keine ungültigen Eingaben verarbeiten, z. B. Nicht-Ganzzahlen, Zahlen kleiner als 1 usw. Ihr Programm muss mindestens die richtige Ausgabe für Eingaben bis 20 liefern. Da dies Codegolf ist , sind Standardlücken nicht zulässig und die kürzeste Antwort in Bytes gewinnt!