aboutsummaryrefslogtreecommitdiff
path: root/exercises/08_quiz.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/08_quiz.zig
parentcf0920de31e9b5f3c5ba6de19a1b4c8d0c58b907 (diff)
downloadziglings-55ad7c32f2d534b1fbd438204d21738f958c51a5.tar.gz
ziglings-55ad7c32f2d534b1fbd438204d21738f958c51a5.tar.bz2
ziglings-55ad7c32f2d534b1fbd438204d21738f958c51a5.tar.xz
ziglings-55ad7c32f2d534b1fbd438204d21738f958c51a5.zip
Moved exercises to exercises because exercises
Diffstat (limited to 'exercises/08_quiz.zig')
-rw-r--r--exercises/08_quiz.zig34
1 files changed, 34 insertions, 0 deletions
diff --git a/exercises/08_quiz.zig b/exercises/08_quiz.zig
new file mode 100644
index 0000000..e23f856
--- /dev/null
+++ b/exercises/08_quiz.zig
@@ -0,0 +1,34 @@
+//
+// Quiz time! Let's see if you can fix this whole program.
+//
+// This is meant to be challenging.
+//
+// Let the compiler tell you what's wrong.
+//
+// Start at the top.
+//
+const std = @import("std");
+
+pub fn main() void {
+ // What is this nonsense? :-)
+ const letters = "YZhifg";
+
+ const x: u8 = 1;
+
+ // This is something you haven't seen before: declaring an array
+ // without putting anything in it. There is no error here:
+ var lang: [3]u8 = undefined;
+
+ // The following lines attempt to put 'Z', 'i', and 'g' into the
+ // 'lang' array we just created.
+ lang[0] = letters[x];
+
+ x = 3;
+ lang[???] = letters[x];
+
+ x = ???;
+ lang[2] = letters[???];
+
+ // We want to "Program in Zig!" of course:
+ std.debug.print("Program in {}!\n", .{lang});
+}