BrainFuck SPACE?

3 Antworten

Von Experte whgoffline bestätigt

Mal abgesehen davon, dass du es unnötig kompliziert machst:

Space hat den Ascii-Code 32. Da, wo du versuchst, das Space zu erzeugen (zwischen den > und <) sind aber nur 23 Plusse. Es fehlen also noch 9, damit ein Space draus wird.

Warum zählst du eigentlich immer hoch und runter? Du kannst doch einfach immer zum nächsten Buchstaben zählen?

++++++++[>+++++++++>++++<<-]> zwei Felder mit 8*9 (H) und 8*4 erzeugen
.    "H" ausgeben 
-------.    Sieben Buchstaben zurück zählen und "A" ausgeben
+++++++++++..  11 Buchstaben vor zählen und zweimal ausgeben ("LL")  
+++.    nochmal drei weiterzählen und ausgeben ("O")
>.    in die zweite Zelle springen, wo die 32 drinsteht und ausgeben (" ")
<++++++++.    Zurück in die erste Zelle springen und nochmal 8 draufzählen um von "O" nach "W" zu kommen

In kurz: ++++++++[>+++++++++>++++<<-]>.-------.+++++++++++..+++.>.<++++++++.

Try it online!

AureumApes 
Fragesteller
 30.04.2021, 11:42
Warum zählst du eigentlich immer hoch und runter? Du kannst doch einfach immer zum nächsten Buchstaben zählen?

Weil ich es übersichtlicher finde

0
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
++++++++.--------
+.-
++++++++++++.------------
++++++++++++.------------
+++++++++++++++.---------------
>++++++++++++++++++++++++++++++++.-----------------------<
+++++++++++++++++++++++.----------------------- 

Du hattest ASCII 23 gesprintet und nicht ASCII 32 (space). Ich habe jetzt 9 + -Zeichen ergänzt und es scheint jetzt zu gehen.

Woher ich das weiß:Studium / Ausbildung – Informatikstudent
AureumApes 
Fragesteller
 29.04.2021, 16:22

Danke. Das geht.
Ich habe mich vertan indeet. Sry

1

https://gc.de/gc/brainfuck/

Hier gepostet sieht dein Programm gut aus. Das Leerzeichen wird als  dargestellt. Aber passt sonst. Vielleicht auch einer ein Darstellungsfehler?

Woher ich das weiß:Studium / Ausbildung – Informatik studiert und mit PCs & Technik beschäftigt
AureumApes 
Fragesteller
 29.04.2021, 16:19

Das kann nur an meiner Konsole liegen ich habe keine Anung warum. Danke vielmals

0
AureumApes 
Fragesteller
 29.04.2021, 16:23

Scheinbar war der Fehler, das ich die Ziffern vertauscht habe. Danke nochmals

0