RosettaCodeData/Task/Ackermann-function/Groovy/ackermann-function-1.groovy

5 lines
155 B
Groovy
Raw Permalink Normal View History

2023-07-01 11:58:00 -04:00
def ack ( m, n ) {
assert m >= 0 && n >= 0 : 'both arguments must be non-negative'
m == 0 ? n + 1 : n == 0 ? ack(m-1, 1) : ack(m-1, ack(m, n-1))
}