week3
This commit is contained in:
parent
453fd47781
commit
a638f4bd24
24
week3/assignment_3a.hoon
Normal file
24
week3/assignment_3a.hoon
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
:: Hoon 101: Assignment 3a. Comment each line of code to tell the reader what the code is doing.
|
||||||
|
:: Comments should be written as "breathing comments" as suggested in the Hoon Style Guide: https://urbit.org/docs/learn/hoon/style/
|
||||||
|
|
||||||
|
:: create a gate, with the sample @ud, given the face n
|
||||||
|
::
|
||||||
|
|= n=@ud
|
||||||
|
:: attach a 't' faced @ud to the subject, with the value 1
|
||||||
|
::
|
||||||
|
=/ t=@ud 1
|
||||||
|
:: create and execute a gate, such that we can recurse back to this point
|
||||||
|
::
|
||||||
|
|-
|
||||||
|
:: if n is 1, return the next child, otherwise the one after
|
||||||
|
::
|
||||||
|
?: =(n 1)
|
||||||
|
:: at the end, return our total
|
||||||
|
::
|
||||||
|
t
|
||||||
|
:: otherwise recurse with n minus one,
|
||||||
|
:: and t multiplied by n. note t is
|
||||||
|
:: not reset with the recurse, as it
|
||||||
|
:: is attached before our recurse point
|
||||||
|
::
|
||||||
|
$(n (dec n), t (mul t n))
|
8
week3/week3.hoon
Normal file
8
week3/week3.hoon
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
|= a=(list *)
|
||||||
|
=/ n=@ud 3
|
||||||
|
|-
|
||||||
|
?~ a ~
|
||||||
|
?: =(1 n)
|
||||||
|
i.a
|
||||||
|
$(n (dec n), a t.a)
|
||||||
|
|
Loading…
Reference in New Issue
Block a user