Die Herausforderung
Schreiben Sie ein Programm oder eine Funktion, die Sterne druckt! Das Programm erhält per Standardeingabe zwei Parameter: Größe des Sterns und Anzahl der Punkte des Sterns. Ein Stern kann eine beliebige Größe zwischen 0 und 10 haben und 3, 4 oder 5 Punkte haben. Die Eingabeparameter werden durch ein Komma getrennt, zum Beispiel: 5,3
bedeutet ein Stern der Größe 5 mit 3 Punkten. Die Sterne bestehen aus Sternchen*
Beachten Sie, dass das Programm nur gültige Eingaben erhält.
Die Drucke müssen richtig verteilt sein, damit wir schöne Sterne in der Ausgabe sehen können!
Parameter Erklärungen
Punkte
Zählt die Anzahl der Arme vom zentralen Stern.
3 Punkte Sterne :
*
*
*
* *
* *
Sie bestehen aus einem vertikalen Arm und zwei diagonalen Armen. Die Trennung zwischen diagonalen Armen ist2*size-1
4 Punkte Sterne
* *
* *
*
* *
* *
Sie haben die Form eines X und bestehen aus zwei diagonalen Linien. Die Trennung zwischen Zeilen ist2*(size-1)+1
5 Punkte Sterne
*
*
* * * * *
* *
* *
Sie setzen sich aus einer vertikalen und einer horizontalen Linie zusammen. Jedes Sternchen in der horizontalen Linie ist durch ein Leerzeichen getrennt. Auch sie haben zwei diagonale Linien, mit einem Abstand zwischen sich2*(size-2)+1
Größe
Die Größe ist die Anzahl der Sternchen, bei der jeder Arm des Sterns vom mittleren Sternchen (einschließlich) aus gezählt wird.
Sterne der Größe 1 setzen sich aus einem Sternchen zusammen
*
Größe 2 Sterne Beispiele
3 Punkte
*
*
* *
4 Punkte Sterne
* *
*
* *
5 Punkte Sterne
*
* * *
* *
Beispiele für die Größe von 3 Sternen finden Sie in der Erläuterung der Punkte-Parameter.
Gewinnkriterien
Kürzester Code gewinnt. Code muss mit folgenden Eingabeparametern überprüft werden:3,2
3,3
4,2
4,3
5,2
5,3
Bonus
-25% Zeichen zählen für die Erstellung einer Größe 6, auf die mit den zuvor erläuterten Kriterien hingewiesen wurde (6 Arme und die Größe ist die Anzahl der Sternchen, die vom zentralen Sternchen aus gezählt werden). Es kann jede Form sein, die Sie möchten, während die Spezifikationen eingehalten werden. Ein Beispiel für einen Stern der Größe 6 mit der Größe 3:
*
*
* * * * *
* * *
* * *
6 Punkte Sterne müssen mit den folgenden Eingaben überprüft werden 6,2
6,3
.
Antworten:
Mathematica
80 7667 ZeichenEinige würden sich fragen, ob dies ASCII-Kunst ist, aber ich konnte nicht widerstehen.
Verwendung (Setzen Sie die Schriftgröße auf 24, damit die Sterne groß erscheinen.)
Ausgabe für folgende Fälle:
{{3, 2}, {3, 3}, {4, 2}, {4, 3},
{5, 2}, {5, 3}, {6, 2}, {6, 3},
{7, 4}, {8, 3}, {9, 2}, {12, 4}}
Wie es funktioniert
(a) Der erste Stern befindet sich am Ursprung eines Koordinatenraums. Lassen Sie es uns anzeigen.
(b) Anschließend zeigen wir einen Punkt bei {1,0} an.
(c) Dann 5 Punkte auf einmal. Wir haben auf jedes darauf folgende Koordinatenpaar eine reine Funktion angewendet.
(d) Bestimmen Sie die Koordinaten mit Cos und Sin
(e) Koordinaten funktionieren nur auf Einheitskreisen; 6 ist die Anzahl der Lichtstrahlen.
(f) Zeichnen Sie Radien von 0 bis 4 Einheiten.
quelle
Ruby, ASCII,
193Punkte 142 (189 Zeichen - 25% Bonus)Testen Sie es online
Ich denke, es qualifiziert sich für den 6-Strahlen-Sternebonus.
quelle
Mathematica ,
6564Meine Einstellung zu Davids Methode:
Verwenden:
Fehler entstehen
=
eher durch die Verwendung von als:=
, und es ist nicht der richtige Weg, eine Definition zu erstellen, aber es funktioniert hier.Wenn man Punkte anstelle von Sternchen verwenden könnte, könnte dies geschrieben werden (52 Zeichen):
quelle
quelle