f91(N) when N > 100 -> N-10;
f91(N) when N =< 100 -> f91(f91(N+11)).
let rec f x = if x > 100 then x - 10 else f (f (x + 11))
let rec f x = if x > 100 then x - 10 else f (f (x + 11))
(define (f x) (if (> x 100) (- x 10) (f (f (+ x 11)))))
: f dup 100 > if 10 - else 11 + recurse recurse then ;
int
f(int x)
{
return (x > 100) ? x - 10 : f(f(x + 11));
}
int f(x)
int x;
{
return (x > 100) ? x - 10 : f(f(x + 11));
}
public class F {
public static int f(int x)
{
return (x > 100) ? x - 10 : f(f(x + 11));
}
}
91;
102 -> 92; 103 -> 93; 104 -> 94; 105 -> 95;
106 -> 96; 107 -> 97; 108 -> 98; 109 -> 99;
110 -> 100; 111 -> 101; 102--* -> 92--* )
| 101--* & x -> x - 10
| x -> f(f(x+11));;]]>
function y = f(x)
if (x > 100)
y = x - 10 ;
else
y = f (f (x + 11)) ;
end
function y = f(x)
if (x > 100)
y = x - 10 ;
else
y = f (f (x + 11)) ;
end
/f { dup 100 gt { 10 sub } { 11 add f f } ifelse } def
« SWAP 10 - SWAP »
« 11 ROT + OVER DUP EVAL SWAP DUP EVAL »
IFTE
»
]]>
]]>
The Miraculous Ninety-One Function of Mac Carthy.
Romeo, a young man.
Juliet, a young and beautiful lady.
Lady Macbeth, an old witch hag.
Act I: Of Love and Hatred.
Scene I: Overture.
[Enter Romeo and Juliet]
Romeo: Listen to your heart!
Juliet: You are as healthy as a tree!
[Exit Juliet]
[Enter Lady Macbeth]
Romeo: Remember me!
[Exit Lady Macbeth]
[Enter Juliet]
Scene II: Here, and here once again later.
Juliet: Am I better than the sum of an amazing lovely gentle
beautiful golden healthy angel and the sum of an happy healthy
noble handsome honest hero and a cute golden rose? If so, let
us proceed to scene III.
Romeo: Let us proceed to scene V.
Scene III: Substracting ten from Juliet.
Romeo: You are as gentle as the difference between thyself and
the sum of a fine gentle blossoming rose and a bold hero.
Scene IV: Return of Lady Macbeth.
[Exit Juliet]
[Enter Lady Macbeth]
Romeo: Recall your imminent death!
Lady Macbeth: Am I as good as a tree? If so, let us proceed to scene VII.
Lady Macbeth: Am I as good as a blossoming rose? If so, let us
proceed to scene VI.
[Exit Lady Macbeth]
[Enter Juliet]
Romeo: Let us proceed to scene II.
Scene V: The First Call.
Romeo: You are as fine as the sum of thyself and the sum of
a fair fine gentle hero and the sum of a bold rose and an angel.
Juliet: You are as noble as a golden tree.
[Exit Juliet]
[Enter Lady Macbeth]
Romeo: Remember me!
[Exit Lady Macbeth]
[Enter Juliet]
Juliet: Let us proceed to scene II.
Scene VI: The Second Call.
[Exit Lady Macbeth]
[Enter Juliet]
Juliet: Let us proceed to scene II.
Scene VII: The End.
[Exit Lady Macbeth]
[Enter Juliet]
Romeo: Open your heart!
[Exeunt]
#include
#include
namespace mpl=boost::mpl;
template class f: public
mpl::eval_if<
mpl::greater >,
mpl::minus >,
f > > > >
{};
]]>
function f(x) if x>100 then return x-10 else return f(f(x+11)) end end
]]>
declare namespace my="urn:my";
declare function my:f($x as xs:integer) as xs:integer
{
let $result:=if ($x>100) then $x - 10 else my:f(my:f($x + 11))
return $result
}
Define f(x)=when(x>100,x-10,f(f(x+11)))
integer function f(x)
integer :: x
if (x > 100) then
f = x - 10
else
f = f(f(x + 11))
end if
return
end function f
IDENTIFICATION DIVISION.
PROGRAM-ID. MacCarthy91
AUTHOR. Frederic BEAL.
* This program demonstrates the power of COBOL programming.
ENVIRONMENT DIVISION.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 CurrentValue PIC 9(6) VALUE ZEROS.
PROCEDURE DIVISION.
Begin.
PERFORM GetInput
PERFORM MainLoop
DISPLAY "The result is:" CurrentValue
STOP RUN.
GetInput.
DISPLAY "Input any number:"
ACCEPT CurrentValue.
MainLoop.
IF CurrentValue GREATER THAN 100 THEN
SUBSTRACT 10 FROM CurrentValue
ELSE
ADD 11 TO CurrentValue
PERFORM MainLoop
PERFORM MainLoop
ENDIF.
\makeatletter
\def\g#1{\count@=#1\relax \G \number\count@ }
\def\G{%
\ifnum\count@ >100
\advance\count@ by-10
\else
\advance\count@ by 11 \G \G
\fi
}
\makeatother
\def\f#1{%
\ifnum\number#1>100
\number\numexpr#1-10\relax
\else
\expandafter\f\expandafter{%
\expandafter\f\expandafter{%
\number\numexpr#1+11\relax
}%
}%
\fi
}
vardef f(expr x) =
save result; numeric result;
if x > 100:
result := x - 10;
else:
result := f(f(x + 11));
fi
result
enddef;
f:
cmp eax, 100
jg b
sub eax, 10
ret
b:
add eax, 11
call f
jmp f
Function F(Int x)
If x > 100 Then
F = x - 10
Else
F = F(F(x + 11))
End If
End Function
function f(x)
{
if (x > 100)
{
return x - 10;
}
else
{
return f(f(x + 11));
};
}
(S s);
public static void Main(string[] args)
{
Func F = z => new Func,Func>(f =
> x => x > 100 ? x-10 : f(f(x+11)))(new S, Func>, Func>>(y => f => x => f(y(y)(f))(x))(y => f => x => f(y(y)(f))(x)
)(f => x => x > 100 ? x-10 : f(f(x+11))))(z);
Console.WriteLine(@"{0}", F(Int32.Parse(args[0])));
}
}]]>
class Foo
{
static public int f(int x)
{
if (x > 100)
{
return x - 10;
}
else
{
return f(f(x + 11));
};
}
}
.method public hidebysig static int32 f(int32 x) cil managed
{
// Code size 25 (0x19)
.maxstack 2
IL_0000: ldarg.0
IL_0001: ldc.i4.s 100
IL_0003: ble.s IL_000a
IL_0005: ldarg.0
IL_0006: ldc.i4.s 10
IL_0008: sub
IL_0009: ret
IL_000a: ldarg.0
IL_000b: ldc.i4.s 11
IL_000d: add
IL_000e: call int32 Foo::f(int32)
IL_0013: call int32 Foo::f(int32)
IL_0018: ret
} // end of method Foo::f
> 10) != 0
#error Integer overflow
#endif
#if ((X) >> 0) & 1
#define UGJ 1
#else
#define UGJ 0
#endif
#if ((X) >> 1) & 1
#define LXG 1
#else
#define LXG 0
#endif
#if ((X) >> 2) & 1
#define IKD 1
#else
#define IKD 0
#endif
#if ((X) >> 3) & 1
#define CKF 1
#else
#define CKF 0
#endif
#if ((X) >> 4) & 1
#define TGF 1
#else
#define TGF 0
#endif
#if ((X) >> 5) & 1
#define LXQ 1
#else
#define LXQ 0
#endif
#if ((X) >> 6) & 1
#define KPP 1
#else
#define KPP 0
#endif
#if ((X) >> 7) & 1
#define UXM 1
#else
#define UXM 0
#endif
#if ((X) >> 8) & 1
#define JFA 1
#else
#define JFA 0
#endif
#if ((X) >> 9) & 1
#define UOZ 1
#else
#define UOZ 0
#endif
#define YCA ((UGJ << 0) + (LXG << 1) + (IKD << 2) \
+ (CKF << 3) + (TGF << 4) + (LXQ << 5) \
+ (KPP << 6) + (UXM << 7) + (JFA << 8) + (UOZ << 9))
#undef BAR
#define AAH 1
#include __FILE__
#include
int
main(void)
{
printf("%d\n", YCA);
return 0;
}
#endif
#ifdef AAH
#undef AAH
#if YCA > 100
#define WSM
#include __FILE__
#undef WSM
#else
#define NTA
#include __FILE__
#undef NTA
#define AAH 1
#include __FILE__
#define AAH 1
#include __FILE__
#undef AAH
#endif
#endif
#ifdef IMY
#if UGJ
#undef UGJ
#define UGJ 0
#if LXG
#undef LXG
#define LXG 0
#if IKD
#undef IKD
#define IKD 0
#if CKF
#undef CKF
#define CKF 0
#if TGF
#undef TGF
#define TGF 0
#if LXQ
#undef LXQ
#define LXQ 0
#if KPP
#undef KPP
#define KPP 0
#if UXM
#undef UXM
#define UXM 0
#if JFA
#undef JFA
#define JFA 0
#if UOZ
#error Integer overflow
#else
#undef UOZ
#define UOZ 1
#endif
#else
#undef JFA
#define JFA 1
#endif
#else
#undef UXM
#define UXM 1
#endif
#else
#undef KPP
#define KPP 1
#endif
#else
#undef LXQ
#define LXQ 1
#endif
#else
#undef TGF
#define TGF 1
#endif
#else
#undef CKF
#define CKF 1
#endif
#else
#undef IKD
#define IKD 1
#endif
#else
#undef LXG
#define LXG 1
#endif
#else
#undef UGJ
#define UGJ 1
#endif
#endif
#ifdef NTA
#undef NTA
#define IMY
#include __FILE__
#include __FILE__
#include __FILE__
#include __FILE__
#include __FILE__
#include __FILE__
#include __FILE__
#include __FILE__
#include __FILE__
#include __FILE__
#include __FILE__
#undef IMY
#endif
#ifdef FOO
#if UGJ
#undef UGJ
#define UGJ 0
#else
#undef UGJ
#define UGJ 1
#if LXG
#undef LXG
#define LXG 0
#else
#undef LXG
#define LXG 1
#if IKD
#undef IKD
#define IKD 0
#else
#undef IKD
#define IKD 1
#if CKF
#undef CKF
#define CKF 0
#else
#undef CKF
#define CKF 1
#if TGF
#undef TGF
#define TGF 0
#else
#undef TGF
#define TGF 1
#if LXQ
#undef LXQ
#define LXQ 0
#else
#undef LXQ
#define LXQ 1
#if KPP
#undef KPP
#define KPP 0
#else
#undef KPP
#define KPP 1
#if UXM
#undef UXM
#define UXM 0
#else
#undef UXM
#define UXM 1
#if JFA
#undef JFA
#define JFA 0
#else
#undef JFA
#define JFA 1
#if UOZ
#undef UOZ
#define UOZ 0
#else
#undef UOZ
#define UOZ 1
#endif
#endif
#endif
#endif
#endif
#endif
#endif
#endif
#endif
#endif
#endif
#ifdef WSM
#undef WSM
#define FOO
#include __FILE__
#include __FILE__
#include __FILE__
#include __FILE__
#include __FILE__
#include __FILE__
#include __FILE__
#include __FILE__
#include __FILE__
#include __FILE__
#undef FOO
#endif
]]>
s/$/x/
:f
/x/!b fin
:zeros
s/^0//
t zeros
/^[0-9]x/b appel
/^[0-9][0-9]x/b appel
/^100x/b appel
b moinsdix
:appel
s/^/0/
s/0x/1ax/
s/1x/2ax/
s/2x/3ax/
s/3x/4ax/
s/4x/5ax/
s/5x/6ax/
s/6x/7ax/
s/7x/8ax/
s/8x/9ax/
s/9x/0ax/
s/0\([1-9]\)a/1\1/
s/1\([1-9]\)a/2\1/
s/2\([1-9]\)a/3\1/
s/3\([1-9]\)a/4\1/
s/4\([1-9]\)a/5\1/
s/5\([1-9]\)a/6\1/
s/6\([1-9]\)a/7\1/
s/7\([1-9]\)a/8\1/
s/8\([1-9]\)a/9\1/
s/9\([1-9]\)a/'0\1/
s/00a/20/
s/10a/30/
s/20a/40/
s/30a/50/
s/40a/60/
s/50a/70/
s/60a/80/
s/70a/90/
s/80a/'00/
s/90a/'10/
:r11
s/0'/1/
s/1'/2/
s/2'/3/
s/3'/4/
s/4'/5/
s/5'/6/
s/6'/7/
s/7'/8/
s/8'/9/
s/9'/'0/
s/^'/1/
t r11
s/$/x/
b f
:moinsdix
s/0\([0-9]\)x/b\1x/
s/1\([0-9]\)x/0\1x/
s/2\([0-9]\)x/1\1x/
s/3\([0-9]\)x/2\1x/
s/4\([0-9]\)x/3\1x/
s/5\([0-9]\)x/4\1x/
s/6\([0-9]\)x/5\1x/
s/7\([0-9]\)x/6\1x/
s/8\([0-9]\)x/7\1x/
s/9\([0-9]\)x/8\1x/
s/b/'9/
:r
s/1'/0/
s/2'/1/
s/3'/2/
s/4'/3/
s/5'/4/
s/6'/5/
s/7'/6/
s/8'/7/
s/9'/8/
s/0'/'0/
t r
s/x$//
b f
:fin
s/^0//
t fin
(lf.(lx.(f (x x)) lx.(f (x x))) lf.ln.((((lm.ln.(ln.((n lz.lx.ly.y) lx.ly.x)
((lm.ln.((n lk.(ls.(s lx.ly.y) ((k ls.lz.((z (ln.lf.lx.(f ((n f) x)) (ls.(s
lx.ly.x) s))) (ls.(s lx.ly.x) s))) lz.((z lf.lx.x) lf.lx.x)))) m) m) n)) n)
lf.lx.(f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f
(f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f
(f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f
(f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f (f
(f (f (f x)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
))))))))))))))))))))))))))))))))))))) (f (f ((lm.ln.((m ln.lf.lx.(f ((n f)
x))) n) n) lf.lx.(f (f (f (f (f (f (f (f (f (f (f x)))))))))))))))
((lm.ln.((n lk.(ls.(s lx.ly.y) ((k ls.lz.((z (ln.lf.lx.(f ((n f) x)) (ls.(s
lx.ly.x) s))) (ls.(s lx.ly.x) s))) lz.((z lf.lx.x) lf.lx.x)))) m) n)
lf.lx.(f (f (f (f (f (f (f (f (f (f x)))))))))))))
``s```ss`si`k``s``s`ks``s`k`s``si`k``s`k`sik``s`k`s`kk``s``s`ksk``s``s`ksk
`k``s``si`k`s``s`ksk`k``s``s`ksk``s`k``s``s`kski``s``s`ksk```sii``s``s`ksk
i``s``s`ks``s``s`ks``s``s`ks``s`k`s`k`s`kk``s`k`s`k`si``s`k`s`k`si``s`k`s`
kk``s``s`ksk``s``s`ksk`k``s``si`k`s``s`ksk`k``s``s`ksk``s`k``s``s`kski``s`
`s`ksk```sii``s``s`kski``s``s`ks``s`k`s`ks``s`k`s`kk``s`k`s`k`s`kk``s`k`s`
k`si``s`k`s`k`si``s`k`s`kk``s``s`ksk``s``s`ksk`k``s``si`k`s``s`ksk`k``s``s
`ksk``s`k``s``s`kski``s``s`ksk```sii``s``s`kski``s`k`s`k`s`kk``s`k`s`k`si`
`s``s`ks``s`k`s`ks``s``s`ks``s`k`s`kk``s``s`ks``s``s`ksk``s``s`ksk`k``s``s
i`k`s``s`ksk`k``s``s`ksk``s`k``s``s`kski``s``s`ksk```sii``s``s`kski``s``s`
ksk``s``s`ksk`k``s``si`k`s``s`ksk`k``s``s`ksk``s`k``s``s`kski``s``s`ksk```
sii``s``s`kski``s`k`s`k`s`kk``s`k`s`k`si``s`k`s`k`si``s`k`s`kk``s``s`ksk``
s``s`ksk`k``s``si`k`s``s`ksk`k``s``s`ksk``s`k``s``s`kski``s``s`ksk```sii``
s``s`kski``s`k`s`kk``s``s`ksk``s``s`ksk`k``s``si`k`s``s`ksk`k``s``s`ksk``s
`k``s``s`kski``s``s`ksk```sii``s``s`kski`k`k``s`k`sik`k``s`kk```s``s`kski`
``s``s`ksk```sii``s``s`kski``s``s``si`k``s``s`ks``s`k`si``s`kk``s`k`s``s`k
sk``si`kk```ss`si`kk`k``s``si`k`ki`k`ki`k`kii
++++++++[<+++++++++>-]<---.>++++++[<+++++++>-]<-.++++++.--.-------------.
>++++[<+++++>-]<+.>+++++++++[<---------->-]<.>+++++++++[<+++++++++>-]<++++
.-------.>+++++++++[<--------->-]<+++.>+++++++++[<+++++++++>-]<---.+.--.--
---------.>++++[<++++>-]<.-------------.>++++++++[<--------->-]<+++.>+++++
[<+++++>-]<+.>+++++++[<------->-]<+.[-]>+>+>+[->,----------]<[------------
------------------------<]+[>]<<<<[>>>-[[<]>>>[<+<+>>-]<-[>+<-]+[>]<-]<[<]
>>>[<++++++++++>-]<-[>+<-]+[>]<<<<]+>->[-]>[-]<++++[>+++++<-]>[<+++++>-]<<
<[>>[<[>>+>+<<<-]>>>[<<<+>>>-]<<[>>+>+<<<-]>>>[<<<+>>>-]<[<->-]>>+<<<[>>>-
<<<[-]]<-]>>>+>[[-]<-<<<<+++++++++++<+>>>>>>]<[[-]<<<<----------<->>>>>]<<
<++++[>+++++<-]>[<+++++>-]<<<]>>[-]>++++++[<+++++++>-]<<[->.<]<++++++++++.
]]>
Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook?
Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook. Ook! Ook!
Ook! Ook! Ook! Ook! Ook! Ook. Ook. Ook? Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook! Ook? Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook?
Ook! Ook! Ook? Ook! Ook? Ook. Ook! Ook! Ook! Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook! Ook. Ook! Ook! Ook! Ook! Ook! Ook.
Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook!
Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook!
Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook. Ook. Ook?
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook?
Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook.
Ook. Ook. Ook! Ook. Ook. Ook? Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook! Ook? Ook? Ook. Ook! Ook!
Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook!
Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook. Ook?
Ook! Ook! Ook? Ook! Ook? Ook. Ook! Ook. Ook. Ook?
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook?
Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook. Ook! Ook!
Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook!
Ook! Ook! Ook! Ook. Ook. Ook? Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook! Ook? Ook? Ook. Ook! Ook!
Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook!
Ook! Ook! Ook! Ook! Ook! Ook! Ook. Ook? Ook! Ook!
Ook? Ook! Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook! Ook. Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook? Ook! Ook! Ook? Ook!
Ook? Ook. Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook.
Ook. Ook. Ook! Ook. Ook! Ook! Ook! Ook! Ook! Ook.
Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook!
Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook!
Ook! Ook! Ook! Ook. Ook. Ook? Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook! Ook!
Ook? Ook! Ook? Ook. Ook! Ook. Ook! Ook! Ook! Ook!
Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook!
Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook!
Ook! Ook! Ook! Ook. Ook. Ook? Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook! Ook? Ook? Ook. Ook! Ook! Ook! Ook!
Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook!
Ook! Ook! Ook! Ook! Ook. Ook? Ook! Ook! Ook? Ook!
Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook.
Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook! Ook!
Ook? Ook! Ook? Ook. Ook. Ook. Ook! Ook. Ook. Ook?
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook! Ook? Ook? Ook. Ook! Ook!
Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook!
Ook! Ook! Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook.
Ook. Ook. Ook! Ook. Ook! Ook? Ook! Ook! Ook? Ook!
Ook. Ook? Ook. Ook. Ook. Ook? Ook. Ook. Ook. Ook?
Ook. Ook. Ook! Ook? Ook! Ook! Ook. Ook? Ook. Ook!
Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook!
Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook!
Ook? Ook! Ook? Ook. Ook! Ook? Ook! Ook! Ook! Ook!
Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook!
Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook!
Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook!
Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook!
Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook!
Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook!
Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook? Ook.
Ook? Ook! Ook. Ook. Ook! Ook? Ook. Ook? Ook? Ook!
Ook? Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook! Ook?
Ook. Ook? Ook. Ook? Ook. Ook? Ook! Ook! Ook! Ook?
Ook! Ook? Ook? Ook. Ook? Ook! Ook. Ook? Ook. Ook?
Ook. Ook? Ook! Ook? Ook? Ook. Ook. Ook. Ook? Ook.
Ook. Ook. Ook. Ook? Ook. Ook? Ook! Ook! Ook? Ook!
Ook? Ook. Ook! Ook! Ook! Ook? Ook. Ook? Ook. Ook.
Ook? Ook. Ook! Ook! Ook? Ook! Ook. Ook. Ook! Ook?
Ook. Ook? Ook? Ook! Ook? Ook. Ook! Ook! Ook? Ook!
Ook? Ook. Ook! Ook? Ook? Ook. Ook? Ook! Ook. Ook?
Ook. Ook? Ook. Ook? Ook! Ook? Ook? Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook?
Ook! Ook! Ook? Ook! Ook? Ook. Ook! Ook! Ook! Ook?
Ook. Ook? Ook. Ook. Ook? Ook. Ook! Ook! Ook? Ook!
Ook. Ook. Ook! Ook? Ook. Ook? Ook? Ook! Ook? Ook.
Ook? Ook. Ook? Ook. Ook? Ook. Ook? Ook! Ook. Ook.
Ook. Ook? Ook! Ook! Ook. Ook? Ook! Ook? Ook! Ook!
Ook? Ook! Ook. Ook? Ook! Ook? Ook! Ook! Ook? Ook!
Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook! Ook? Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook? Ook. Ook! Ook! Ook? Ook!
Ook. Ook? Ook! Ook? Ook? Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook! Ook!
Ook? Ook! Ook? Ook. Ook? Ook. Ook? Ook. Ook! Ook?
Ook. Ook? Ook. Ook? Ook! Ook? Ook? Ook. Ook! Ook?
Ook. Ook? Ook. Ook? Ook. Ook. Ook. Ook? Ook. Ook.
Ook? Ook. Ook? Ook. Ook? Ook. Ook! Ook! Ook? Ook!
Ook. Ook? Ook. Ook? Ook. Ook? Ook! Ook? Ook? Ook.
Ook? Ook. Ook? Ook. Ook. Ook. Ook. Ook? Ook. Ook?
Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook. Ook? Ook.
Ook! Ook? Ook. Ook? Ook. Ook? Ook. Ook. Ook. Ook?
Ook. Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook! Ook!
Ook? Ook! Ook. Ook? Ook. Ook? Ook. Ook? Ook! Ook?
Ook? Ook. Ook? Ook. Ook? Ook. Ook. Ook. Ook. Ook?
Ook. Ook? Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook.
Ook! Ook? Ook? Ook. Ook! Ook! Ook. Ook? Ook! Ook!
Ook? Ook! Ook. Ook? Ook. Ook? Ook. Ook. Ook? Ook.
Ook? Ook. Ook? Ook. Ook! Ook? Ook. Ook? Ook. Ook?
Ook. Ook? Ook! Ook! Ook? Ook. Ook? Ook. Ook? Ook.
Ook! Ook? Ook! Ook! Ook? Ook! Ook? Ook! Ook? Ook.
Ook! Ook! Ook? Ook! Ook. Ook? Ook. Ook? Ook. Ook?
Ook. Ook. Ook. Ook? Ook! Ook? Ook! Ook? Ook! Ook!
Ook? Ook! Ook? Ook. Ook! Ook! Ook? Ook. Ook? Ook.
Ook? Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook. Ook. Ook.
Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook?
Ook. Ook? Ook? Ook! Ook? Ook. Ook! Ook? Ook! Ook?
Ook! Ook! Ook? Ook! Ook? Ook. Ook? Ook. Ook? Ook.
Ook? Ook. Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook!
Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook!
Ook! Ook! Ook? Ook. Ook! Ook! Ook. Ook? Ook. Ook?
Ook. Ook? Ook. Ook? Ook. Ook? Ook? Ook! Ook? Ook.
Ook? Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook! Ook? Ook. Ook? Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook. Ook! Ook!
Ook? Ook! Ook. Ook? Ook! Ook? Ook? Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook?
Ook! Ook! Ook? Ook! Ook? Ook. Ook? Ook. Ook? Ook.
Ook? Ook! Ook. Ook? Ook. Ook? Ook! Ook? Ook! Ook!
Ook? Ook! Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook? Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook? Ook! Ook! Ook? Ook!
Ook? Ook. Ook? Ook. Ook! Ook? Ook! Ook! Ook. Ook?
Ook! Ook. Ook? Ook. Ook? Ook! Ook? Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook.
"esaelP",,,,,,vv *2 <
4, 5
>48*,"a",48*, ".rebmun",,,,,,,^
8 > v
*& \
^,,,,,"enter",<>1 >: >| :
:v 5
+$ 5
> \ 1- ^ 1 4
. *
^ - *52 _92++\ ^>52*,@
^ ` <
]]>
TITLE MCC
FL=0
A=1
B=2
C=3
P=17
NEGF==1
DIGF==2
CHTTYO==1
CHTTYI==2
PDLEN==100
PDL: BLOCK PDLEN
N:0
LINBUF: BLOCK 30
LINPTR: 0
START: MOVE P,[-PDLLEN,,PDL-1]
.CALL [SETZ ? SIXBIT/OPEN/
[.UAI,,CHTTYI] ? [SIXBIT/TTY/] ((SETZ))]
.LOSE %LSFIL
.CALL [SETZ ? SIXBIT/OPEN/
[.UAO,,CHTTYO] ? [SIXBIT/TTY/] ((SETZ))]
.LOSE %LSFIL
PUSHJ P,GETLIN
MOVE A,[440700,,LINBUF]
MOVEM A,LINPTR
PUSHJ P,DECIN
MOVEM C,N
PUSHJ P,MCCRT
PUSHJ P,DECOUT
MOVEI A,[ASCIZ/
/]
PUSHJ P,OUTSTR
.LOGOUT 1
MCCRT: SUBI B,144
JUMPLE B,MCCRT1
SUBI B,132
POPJ P
MCCRT1: ADDI B,133
JUMPA MCCRT
JUMPA MCCRT
DECIN: TRZ FL,NEGF!DIGF
MOVEI B,0
DECIN1: ILDB A,LINPTR
CAIL A,"0
CAILE A,"9
JRST DECIN2
IMULI B,10.
ADDI B,-"0(A)
TRO FL,DIGF
JRST DECIN1
DECIN2: CAIN A,"-
JRST DECIN3
TRNN FL,DIGF
POPJ P,
DECIN4: TRZE FL,NEGF
MOVN B,B
POPJ P,
DECIN3: TRNE FL,DIGF
JRST DECIN4
TRC FL,NEGF
JRST DECIN1
GETLIN: .IOT CHTTYO,["*]
MOVE B,[440700,,LINBUF]
GETLI1: .IOT CHTTYI,A
CAIN A,^M
JRST GETLCR
CAME B,[100700,,LINBFE-1]
IDPB A,B
JRST GETLI1
GETLCR: SETZ A,
IDPB A,B
POPJ P,
OUTSTR: HRLI A,440700
OUTST1: ILDB B,A
JUMPE B,CPOPJ
.IOT CHTTYO,B
JRST OUTST1
CPOPJ: POPJ P,
END START
0 0
1 EmpilerSP
2 EmpilerSP
3 EmpilerSP
4 EmpilerSuiv
5 18
6 EmpilerCO
7 EmpilerSuiv
8 11
9 goto
10 Stop
11 EmpilerLD
12 EmpilerSP
13 EmpilerSuiv
14 2
15 Sub
16 DepilerLD
17 EmpilerLD
18 EmpilerSuiv
19 1
20 Sub
21 Ranger
22 EmpilerLD
23 EmpilerSuiv
24 2
25 Sub
26 Ranger
27 EmpilerSuiv
28 100
29 EmpilerLD
30 Charger
31 Ifless
32 EmpilerSuiv
33 43
34 BrZero
35 EmpilerLD
36 Charger
37 EmpilerSuiv
38 10
39 Sub
40 EmpilerSuiv
41 62
42 goto
43 EmpilerSP
44 EmpilerSP
45 EmpilerSP
46 EmpilerSP
47 EmpilerSP
48 EmpilerSP
49 EmpilerLD
50 Charger
51 EmpilerSuiv
52 11
53 Add
54 EmpilerCO
55 EmpilerSuiv
56 11
57 goto
58 EmpilerCO
59 EmpilerSuiv
60 11
61 goto
62 EmpilerLD
63 EmpilerSuiv
64 3
65 Sub
66 Ranger
67 EmpilerLD
68 EmpilerSuiv
69 1
70 Sub
71 DepilerSP
72 DepilerLD
73 EmpilerSuiv
74 4
75 Add
76 goto
object mccarthy {
def quatrevingtonze(a: Int): Int = {
if (a > 100)
(a-10)
else {
quatrevingtonze(quatrevingtonze(a+11))
}
}
def main(args: Array[String]) = {
val xs = 42
Console.println(xs)
Console.println(quatrevingtonze(xs))
}
}
(max 0 (101-x))).
unfold ltm.
auto.
Qed.
Definition f91_aux :
forall x, (forall z, (max 0 (101-z))< (max 0 (101-x)) ->
{y:nat | (z <=100 /\ y = 91) \/ (z >100 /\ y = z-10)}) ->
{y:nat | (x <=100 /\ y = 91) \/ (x >100 /\ y = x-10)}.
intros x.
case (le_gt_dec x 100); last exists (x-10); auto.
generalize x; clear x.
refine
(fun x Heq rec =>
match rec (x+11) _ with
| (exist v H) =>
match rec v _ with
| (exist v' H) => (exist _ (v') _)
end
end); unfold max; omega.
Defined.
Definition f91' : forall x, {y:nat | (x <=100 /\ y = 91) \/ (x >100 /\ y =
x-10)} :=
(well_founded_induction wf_ltm
(fun x:nat => {y:nat | (x <=100 /\ y = 91) \/ (x >100 /\ y = x-10)})
f91_aux).
Definition f91 (x:nat): nat :=
match f91' x with (exist v _) => v end.
Extraction f91_aux.
]]>
let H := fresh in
set (H:= (le_gt_dec n 100)); clearbody H; inversion H;
try solve [subst n; omega];
match goal with
| I : (_ <= _) |- _ => let N:= fresh "n" in
set (N:=(n+11)); subst n; clear n; clear H; clear I;
simpl in N; try mccarthy; try mccarthy
| I: (_ > _) |- _ => let N:= fresh "n" in
set (N:= (n-10)); subst n; clear n; clear H; clear I; simpl in N
end
end.
Goal False.
set (n:=90).
try mccarthy.]]>
on f(x)
if (x is greater than 100) then
return (x - 10)
else
return f(f(x + 11))
end if
end f
100,
R is X - 10.
f(X, R) :-
X =< 100,
Y is X + 11,
f(Y, Z),
f(Z, R).]]>
quand on f(x)
si (x est supérieur à 100) alors
renvoie (x-10)
sinon
renvoie f(f(x+11))
fin si
fin de f
HAI
I HAS A REKURSHUNLVL
UPZ REKURSHUNLVL!!1
CAN HAS STDIO?
I HAS A NUMBAR
GIMMEH NUMBAR
IM IN YR REKURSHUN
IZ REKURSHUNLVL LIEK 0?
YARLY
VISIBLE NUMBAR
BYES
NOWAI
IZ NUMBAR BIGR THAN 100?
YARLY
NERFZ REKURSHUNLVL!!1
NERFZ NUMBAR!!10
NOWAI
UPZ REKURSHUNLVL!!1
UPZ NUMBAR!!11
KTHX
KTHX
KTHX
KTHXBYE
GET "libhdr"
LET start() = VALOF {
LET f(x) = x>100 -> x-10, f(f(x+11))
LET argv = VEC 2
LET n = 0
IF rdargs("n", argv, 1) = 0 DO {
writes("Argument incorrect*n")
RESULTIS 1
}
n := str2numb(argv!0)
writef("f(%N) = %N*n", n, f(n))
RESULTIS 0
}
DELIMITER //
CREATE PROCEDURE f(IN x INTEGER, OUT y INTEGER)
BEGIN
DECLARE z INTEGER;
IF x>100 THEN
SET y=x-10;
ELSE
CALL f(x+11,z);
CALL f(z,y);
END IF;
END;
//
DELIMITER ;
f91 :: Int -> Int
f91 n = if n > 100 then n - 10 else f91 (f91 (n+11))
sub f {
my $n=shift;
return $n-10 if $n>100;
return f(f($n+11));
}
def f(x): return (x-10 if x>100 else f(f(x+11)))
100)
return $x-10;
else
return f(f($x+11));
}
?>]]>
f91 () {
if test "$1" -gt 100; then
RESULT=`expr "$1" - 10`
else
f91 "`expr \"$1\" + 11`"
f91 "$RESULT"
fi
}
define f91(x) { if (x>100) return (x-10) else return f91(f91(x+11)) }
@echo off
setlocal enabledelayedexpansion
call :f91 %1
echo %ans%
goto :EOF
:f91
if %1 gtr 100 (
set /a ans=%1 - 10
) else (
set /a ans=%1 + 11
call :f91 !ans!
call :f91 !ans!
)
class McCarthy
def self.f91 (n)
if (n > 100) then
n - 10
else
f91(f91(n+11))
end
end
end
func f91(n int) int {
res := 0
if n > 100 {
res = n-10
} else {
res = f91(f91(n+11))
}
return res
}
f:= x -> if x > 100 then x - 10 else f (f (x+11)) fi;
module Mcc where
open import Data.Bool
open import Data.Nat
open import Data.Nat.Properties
mutual
data D : Nat -> Set where
c0 : (n : Nat) -> IsTrue (n > 100) -> D n
c1 : (n : Nat) -> IsTrue (n ≤ 100)
-> (p : D (n + 11))
-> D (f91 (n + 11) p)
-> D n
f91 : (n : Nat) -> (D n) -> Nat
f91 .n (c0 n r) = n - 10
f91 .n (c1 n r p q) = f91 (f91 (n + 11) p) q
katyusha lolita moe dere = 100, chuu = 10, baka = 11;
lolita moe tsun(lolita nii)
{
apron lolita moe imouto = baka^baka^nii;
if(imouto > dere) {
imouto -=~~chuu;
}
else {
imouto = tsun(tsun(baka + nii));
}
return imouto;
}
#!usr/bin/python
uh from sys import exit
def teh mccarthy(x):
try:
ma x = int(x) dog
plz if x > 100:
so like return teh x - 10
else:
ok um like return mccarthy(mccarthy(x+ 11)) broseph
except Exception as ah e:
omg lol print "Aint gonna compute that, dude!"
um exit(something)
if __name__ == '__main__' yeah:
sup broheim
anyways so friggin number = sup raw_input("Duh, whitch nunbah ?" biatch) right
if number.strip() is toootally like "":
fuckin just exit(1)
else wicked:
like print mccarthy(number) man
#!/command/execlineb -S1
if
{
redirfd -w 1 /tmp/f91
echo "\
#!/command/execlineb -S1
ifte
{ expr $1 - 10 }
{
backtick -n FOO { expr $1 + 11 }
backtick -n BAR { /tmp/f91 $FOO }
/tmp/f91 $BAR
}
test $1 -gt 100
"
}
foreground { chmod a+x /tmp/f91 }
foreground { /tmp/f91 $1 }
rm -f /tmp/f91
Obligation Tactic := intros.
Program Fixpoint f91 (n : nat) { measure (101 - n) } :
{m : nat | if le_lt_dec n 100 then m = 91 else m = n - 10} :=
if le_lt_dec n 100 then f91 (f91 (n + 11)) else n - 10.
Next Obligation. abstract omega. Defined.
Next Obligation. destruct_call f91. simpl proj1_sig. destruct le_lt_dec in y; subst; abstract omega. Defined.
Next Obligation. destruct (le_lt_dec n 100). repeat (destruct_call f91; simpl proj1_sig in *).
destruct le_lt_dec in y0. subst. apply y.
subst x0. destruct le_lt_dec in y. apply y.
subst x. assert (n = 100) by omega. now subst n.
exfalso. abstract omega.
Defined.
Next Obligation. destruct le_lt_dec. exfalso; abstract omega. reflexivity. Defined.
Next Obligation. auto with arith. Defined.
FUNCTION mc ( n : integer ) : integer ;
BEGIN
IF n > 100 THEN
mc := n - 10
ELSE
mc := mc( mc( n + 11 ));
END ;
mc:
lw $t0, 0(sp) # pop n in $t0
addi $sp, $sp, 4
li $t1, 100
ble $t0, $t1, received # if n > 100 then
addi $t0, $t0, -10 # n’ := n - 10
addi $sp, $sp, -4 # push n’ = push n - 10
sw $t0, 0($sp)
jr $ra # return
received: # else
addi $sp, $sp, -4 # push “return address”
sw $ra, 0($sp)
addi $t0, $t0, 11 # n’ := n + 11
addi $sp, $sp, -4 # push n’ = push n + 11
sw $t0, 0($sp)
j mc # mc(n+11) at the top
j mc # mc(mc(n+11)) at the top
lw $t0, 0($sp) # pop mc(mc(n+11)) in $t0
addi $sp, $sp, 4
lw $ra, 0($sp) # pop “return address” in $ra
addi $sp, $sp, 4
addi $sp, $sp, -4 # push mc(mc(n+11))
sw $t0, 0($sp)
jr $ra # return