summaryrefslogtreecommitdiffstatshomepage
path: root/exercises/19_functions2.zig
diff options
context:
space:
mode:
authorDave Gauer <dave@ratfactor.com>2021-02-09 18:36:57 -0500
committerDave Gauer <dave@ratfactor.com>2021-02-09 18:36:57 -0500
commit55ad7c32f2d534b1fbd438204d21738f958c51a5 (patch)
tree16be4b53193105a759b3eec25be5e664d41c428d /exercises/19_functions2.zig
parentcf0920de31e9b5f3c5ba6de19a1b4c8d0c58b907 (diff)
Moved exercises to exercises because exercises
Diffstat (limited to 'exercises/19_functions2.zig')
-rw-r--r--exercises/19_functions2.zig31
1 files changed, 31 insertions, 0 deletions
diff --git a/exercises/19_functions2.zig b/exercises/19_functions2.zig
new file mode 100644
index 0000000..4d195a7
--- /dev/null
+++ b/exercises/19_functions2.zig
@@ -0,0 +1,31 @@
+//
+// Now let's create a function that takes a parameter. Here's an
+// example that takes two parameters. As you can see, parameters
+// are declared just like an other types ("name": "type"):
+//
+// fn myFunction( number: u8, is_lucky: bool ) {
+// ...
+// }
+//
+const std = @import( "std" );
+
+pub fn main() void {
+ std.debug.print("Powers of two: {} {} {} {}\n", .{
+ twoToThe(1),
+ twoToThe(2),
+ twoToThe(3),
+ twoToThe(4),
+ });
+}
+
+//
+// Please give this function the correct input parameter(s).
+// You'll need to figure out the parameter name and type that we're
+// expecting. The output type has already been specified for you.
+//
+fn twoToThe(???) u32 {
+ return std.math.pow(u32, 2, my_number);
+ // std.math.pow(type, a, b) takes a numeric type and two numbers
+ // of that type and returns "a to the power of b" as that same
+ // numeric type.
+}