diff options
author | Dave Gauer <dave@ratfactor.com> | 2021-02-09 18:36:57 -0500 |
---|---|---|
committer | Dave Gauer <dave@ratfactor.com> | 2021-02-09 18:36:57 -0500 |
commit | 55ad7c32f2d534b1fbd438204d21738f958c51a5 (patch) | |
tree | 16be4b53193105a759b3eec25be5e664d41c428d /exercises/04_arrays.zig | |
parent | cf0920de31e9b5f3c5ba6de19a1b4c8d0c58b907 (diff) | |
download | ziglings-55ad7c32f2d534b1fbd438204d21738f958c51a5.tar.gz ziglings-55ad7c32f2d534b1fbd438204d21738f958c51a5.tar.bz2 ziglings-55ad7c32f2d534b1fbd438204d21738f958c51a5.tar.xz ziglings-55ad7c32f2d534b1fbd438204d21738f958c51a5.zip |
Moved exercises to exercises because exercises
Diffstat (limited to 'exercises/04_arrays.zig')
-rw-r--r-- | exercises/04_arrays.zig | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/exercises/04_arrays.zig b/exercises/04_arrays.zig new file mode 100644 index 0000000..0f4ffe1 --- /dev/null +++ b/exercises/04_arrays.zig @@ -0,0 +1,51 @@ +// +// Let's learn some array basics. Arrays are declared with: +// +// var foo [3]u32 = [3]u32{ 42, 108, 5423 }; +// +// When Zig can infer the size of the array, you can use '_' for the +// size. You can also let Zig infer the type of the value so the +// declaration is much less verbose. +// +// var foo = [_]u32{ 42, 108, 5423 }; +// +// Get values of an array using array[index] notation: +// +// const bar = foo[3]; // 5423 +// +// Set values of an array using array[index] notation: +// +// foo[3] = 16; +// +// Get the length of an array using the len property: +// +// const length = foo.len; +// +const std = @import("std"); + +pub fn main() void { + // (Problem 1) + // This "const" is going to cause a problem later - can you see what it is? + // How do we fix it? + const some_primes = [_]u8{ 1, 3, 5, 7, 11, 13, 17, 19 }; + + // Individual values can be set with '[]' notation. + // Example: This line changes the first prime to 2 (which is correct): + some_primes[0] = 2; + + // Individual values can also be accessed with '[]' notation. + // Example: This line stores the first prime in "first": + const first = some_primes[0]; + + // (Problem 2) + // Looks like we need to complete this expression. Use the example + // above to set "fourth" to the fourth element of the some_primes array: + const fourth = some_primes[???]; + + // (Problem 3) + // Use the len property to get the length of the array: + const length = some_primes.???; + + std.debug.print("First: {}, Fourth: {}, Length: {}\n", + .{first, fourth, length}); +} |