002 CodeGolfing - Zahlenspirale

Eingabe:

<program> <n>

wobei:

0 < n < 1000

Aufgabe: Schreibe ein Programm das eine Zahl als Argument entgegen nimmt und darauß eine Spiralmatrix aufbaut. Alles Zahlen von 1 bis n laufen von oben links spiralförmig im Uhrzeigersinn um die Matrix in deren Zentrum. Allen Spalten müssen über '-' minimal-bündig gemacht werden. Sprich nur soviele '-' damit die jeweilige Spalte bündig wird. Zahlen >n werden nicht ausgegeben und über notwendige '-' gepadded. Die Matrix ist immer quadratisch.

Beispiel:

$python script.py 13
-1--2-3-4
12-13---5
11------6
10--9-8-7
$python script.py 2
1-2
---
$python script.py 5
1-2-3
----4
----5

Abgabe: Samstag 06.Januar 2017 16:00 Uhr im Space

Dort schauen wir uns die Lösungen an.

Bei Fragen: info@vspace.one

Download der Aufgabenbeschreibung

Tests

testcasesEchoString = [
{"name": "1", "n": 1,"result": "1\n"},
{"name": "2", "n": 2,"result": "1-2\n--\n"},
{"name": "5", "n": 5,"result": "1-2-3\n----4\n----5\n"},
{"name": "13", "n": 13,"result": "-1--2-3-4\n12-13---5\n11------6\n10--9-8-7\n"},
{"name": "16", "n": 16,"result": "-1--2--3-4\n12-13-14-5\n11-16-15-6\n10--9--8-7\n"},
]