Erstes Programm: Zahl potenzieren



  • und das wiederum erinnert mich an

    MOD
    PUSHZERO result        >
    DUP1 count             <[->>+>+<<<]>>>[-<<<+>>>]<
    DEC count              -
    // divisor=5 dividend=2 result=0 (count=2) tmp
    go divisor             <<<
    WHILE divisor          [
     go count               >>>
     DUP0 tmp               [->+>+<<]>>[-<<+>>]<
     NOT tmp                >+<[[-]>-<]>[-<+>]<
     IF tmp                 [[-]
      go result              <<
      INC result             +
      DUP2 count             <[->>+>+<<<]>>>[-<<<+>>>]<
      go tmp                 >
     ENDIF tmp              ]
     go count               <
     DEC count              -
     go divisor             <<<
     DEC divisor            -
    ENDWHILE divisor       ]
    // (divisor=0) dividend result=? count=?
    go count               >>>
    sub from dividend      [-<<->>]
    POP0 count             <
    POP result             [-]<
    DEC dividend           -
    ADD                    [-<+>]<
    


  • Nun, in Brainfuck schreibe ich noch nicht, aber wer weiss ...



  • Bashar schrieb:

    bool IsEven(int iNumber) {
       if (iNumber == 0)
         return true;
       else if (IsOdd(iNumber - 1))
         return true;
       else
         return false; 
    }
    
    bool IsOdd(int iNumber) {
      if (IsEven(iNumber - 1))
        return true;
      else
        return false;
    }
    

    so ungefähr wollt ich das sehen
    http://en.wikipedia.org/wiki/Mutual_recursion
    🙂


Anmelden zum Antworten