Inspiriert von dieser Frage, die weiter von dieser inspiriert wurde , schreiben Sie ein Programm, das zwei Ganzzahlen verwendet und diese auf einzigartige Weise addiert, indem Sie eine ODER-Operation für die Segmente ausführen, die für die Anzeige in einer 7-Segment-Anzeige verwendet werden. Als Referenz werden die Ziffern folgendermaßen dargestellt:
_ _ _ _ _ _ _ _
| | | _| _| |_| |_ |_ | |_| |_|
|_| | |_ _| | _| |_| | |_| _|
Beachten Sie, dass die 1 die beiden Segmente rechts und nicht links verwendet. Es gibt zwei Sonderzeichen, die auf diese Weise erzeugt werden können und keine Zahlen sind. Siehe nachstehende Hinzufügungstabelle:
| 0 1 2 3 4 5 6 7 8 9
--+--------------------
0 | 0 0 8 8 8 8 8 0 8 8
1 | 0 1 a 3 4 9 8 7 8 9
2 | 8 a 2 a 8 8 8 a 8 8
3 | 8 3 a 3 9 9 8 3 8 9
4 | 8 4 8 9 4 9 8 Q 8 9
5 | 8 9 8 9 9 5 6 9 8 9
6 | 8 8 8 8 8 6 6 8 8 8
7 | 0 7 a 3 Q 9 8 7 8 9
8 | 8 8 8 8 8 8 8 8 8 8
9 | 8 9 8 9 9 9 8 9 8 9
Nützliche Beobachtungen:
- Jede Ziffer plus ist gleich sich
- 8 plus eine beliebige Ziffer entspricht 8
- 2 plus 1, 3 oder 7 entspricht dem Buchstaben 'a' (muss klein geschrieben sein)
- 4 plus 7 entspricht entweder "q" oder "Q", Ihre Wahl
- Zahlen sollten rechtsbündig sein, daher sollten die Ziffern von rechts nach links addiert werden. Wenn eine Nummer mehr Ziffern als die andere enthält, sollten die zusätzlichen Ziffern am Anfang unverändert bleiben. Es gibt keine führenden 0en, es sei denn, die Zahl ist genau 0.
- Alle Zahlen sind 0 oder höher. Sie müssen nicht mit einem '-' Zeichen umgehen. (Hauptsächlich, weil die Summe aus '-' und '1' oder '7' nicht passt.)
Ihr Programm sollte 2 Ganzzahlen in jedem von Ihnen gewählten Format akzeptieren und eine Zeichenfolge ausgeben, die deren "Summe" enthält, wenn Sie auf diese Weise berechnet werden. Das ist Code-Golf, also sollte Ihr Programm so klein wie möglich sein.
Beispiele:
- Eingabe: 12345, 123. Ausgabe: 12389
- Eingabe: 88888, 42. Ausgabe: 88888
- Eingabe: 0, 23. Ausgabe: 28
- Eingabe: 120, 240. Ausgabe: a80
- Eingabe: 270, 42. Ausgabe: 2Q8 (oder 2q8)
- Eingabe: 1234567890, 1234567890. Ausgabe: 1234567890
Q
nicht Kleinbuchstaben sein? Die tatsächliche Form sieht q
eher wie einQ
a
sollte aber unbedingt Kleinbuchstaben sein, da A
sieht das ganz anders aus.