diff options
author | Dave Gauer <dave@ratfactor.com> | 2021-01-08 17:53:22 -0500 |
---|---|---|
committer | Dave Gauer <dave@ratfactor.com> | 2021-01-08 17:53:22 -0500 |
commit | 0bb89e3e41cef893c158326a209aec129382c275 (patch) | |
tree | 9b306d886616628485dcecb1c822911853313bb2 | |
parent | b9b89737fca7cc80b7d1b1527445e0ec71b25dda (diff) | |
download | ziglings-0bb89e3e41cef893c158326a209aec129382c275.tar.gz ziglings-0bb89e3e41cef893c158326a209aec129382c275.tar.bz2 ziglings-0bb89e3e41cef893c158326a209aec129382c275.tar.xz ziglings-0bb89e3e41cef893c158326a209aec129382c275.zip |
Added Ex 9,10 for If
-rw-r--r-- | 09_if.zig | 31 | ||||
-rw-r--r-- | 10_if2.zig | 20 | ||||
-rw-r--r-- | README.md | 2 | ||||
-rwxr-xr-x | ziglings | 2 |
4 files changed, 54 insertions, 1 deletions
diff --git a/09_if.zig b/09_if.zig new file mode 100644 index 0000000..3309cbf --- /dev/null +++ b/09_if.zig @@ -0,0 +1,31 @@ +// +// Now we get into the fun stuff, starting with the 'if' statement! +// +// if (true) { +// // stuff +// } else { +// // other stuff +// } +// +// Zig has the usual comparison operators such as: +// +// a == b a equals b +// a < b a is less than b +// a !=b a does not equal b +// +// The important thing about Zig's 'if' is that it *only* accepts +// boolean values. It won't coerce numbers or other types of data +// to true and false. +// +const std = @import("std"); + +pub fn main() void { + const foo = 1; + + if (foo) { + // We want out program to print this message! + std.debug.print("Foo is 1!\n", .{}); + } else { + std.debug.print("Foo is not 1!\n", .{}); + } +} diff --git a/10_if2.zig b/10_if2.zig new file mode 100644 index 0000000..5e78d54 --- /dev/null +++ b/10_if2.zig @@ -0,0 +1,20 @@ +// +// If statements are also valid expressions: +// +// foo = if (a) 2 else 3; +// +// Note: you'll need to declare a variable type when assigning a value +// from a statement like this because the compiler isn't smart enough +// to infer the type for you. +// +const std = @import("std"); + +pub fn main() void { + var discount = true; + + // If discount is true, the price should be $17, otherwise $20: + var price = if ???; + + std.debug.print("With the discount, the price is ${}.\n", .{price}); +} + @@ -62,7 +62,7 @@ Planned exercises: * [x] Assignment * [x] Arrays * [x] Strings -* [ ] If +* [x] If * [ ] While * [ ] For * [ ] Functions @@ -73,6 +73,8 @@ check_it 05_arrays2.zig "LEET: 1337, Bits: 100110011001" "Fill in the two arrays check_it 06_strings.zig "d=d ha ha ha Major Tom" "Each '???' needs something filled in." check_it 07_strings2.zig "Ziggy" "Please fix the lyrics!" check_it 08_quiz.zig "Program in Zig" "See if you can fix the program!" +check_it 09_if.zig "Foo is 1!" +check_it 10_if2.zig "price is \$17" echo echo " __ __ _ " |