Onko Brainfuckissa mahdollista tehdä iffiä? Yritän laskinta tehdä mutta en tiedä mitä pitäisi tehdä jos arvo menee yli ascii 57 (chr 9).
Tälläinen minulla on tähän mennessä:
++++++++ >+++ >++ < [->+<] < [>>++++++<<-] >> .
Eli laskee muistipaikat 1 ja 2 yhteen ja tuohan tosiaan toimii jos niiden arvo ei ole yhteensä yli 9. Onko siis mahdollista tehdä tätä ja jos ei ole niin onko mitään muuta erittäin simppeliä kieltä, jolla sen voisi tehdä?
Eli "onko olemassa simppeliä ohjelmointikieltä jolla voi tehdä if:n"? En tainnut ymmärtää kysymystä, sillä vastaus olisi melkein kaikki maailman ohjelmointikielet...
Voiko bf:llä?
https://www.ohjelmointiputka.net/oppaat/opas.
Auttaiskohan toi..
Ainakin joidenkin Internet-sivujen mukaan on todistettu, että BF pystyy kaikkeen samaan kuin muutkin ohjelmointikielet. Eli jos jonkin ohjelman voi tehdä esim. C:llä, sen voi tehdä myös BF:llä.
Tämän perusteella voi siis tehdä ohjelman, joka ilmoittaa kahden luvun summan oikein, vaikka vastaus olisi moninumeroinen. En kyllä tiedä, kuinka tämä käytännössä tapahtuu, koska BF on minulle tuntematon kieli.
BF on melkein kuin ohjelmoisi Turingin koneella (Turingin kone on vielä vähän rajoittuneempi), joten kovin helppoa sillä ei ole tehdä mitään. Kieltä osaamattomana näyttäisi, että [ ja ] -operaattoreilla voisi tehdä if-lauseita (sama kuin while-lause, joka toistetaan 0 tai 1 kertaa).
Eiköhän tuolla Brainfuckilla if onnistu, sillä tuohon [ -komentoon liittyy eräänlainen if -ehto (jos luku on nolla). Katsoppa wikipedian artikkelista (http://en.wikipedia.org/wiki/Brainfuck) kohta Conditional loop statements. Siinä on koodia, joka voi auttaa.
Aihe on jo aika vanha, joten et voi enää vastata siihen.