diff --git a/build.zig b/build.zig index 2d7d2f4..6c76917 100644 --- a/build.zig +++ b/build.zig @@ -1146,7 +1146,7 @@ const exercises = [_]Exercise{ }, .{ .main_file = "097_bit_manipulation.zig", - .output = "x = 0; y = 1", + .output = "x = 1011; y = 1101", }, .{ .main_file = "098_bit_manipulation2.zig", diff --git a/exercises/097_bit_manipulation.zig b/exercises/097_bit_manipulation.zig index 03fc72d..0e64ad7 100644 --- a/exercises/097_bit_manipulation.zig +++ b/exercises/097_bit_manipulation.zig @@ -71,9 +71,9 @@ const print = std.debug.print; pub fn main() !void { - // As in the example above, we use 1 and 0 as values for x and y - var x: u8 = 1; - var y: u8 = 0; + // Let us use 1101 and 1011 as values for x and y + var x: u8 = 0b1101; + var y: u8 = 0b1011; // Now we swap the values of the two variables by doing xor on them x ^= y; @@ -82,7 +82,7 @@ pub fn main() !void { // What must be written here? ???; - print("x = {d}; y = {d}\n", .{ x, y }); + print("x = {b}; y = {b}\n", .{ x, y }); } // This variable swap takes advantage of the fact that the value resulting diff --git a/patches/patches/097_bit_manipulation.patch b/patches/patches/097_bit_manipulation.patch index 5303ee1..19ba876 100644 --- a/patches/patches/097_bit_manipulation.patch +++ b/patches/patches/097_bit_manipulation.patch @@ -1,5 +1,5 @@ ---- exercises/097_bit_manipulation.zig 2023-10-03 22:15:22.125574535 +0200 -+++ answers/097_bit_manipulation.zig 2023-10-05 20:04:07.282771124 +0200 +--- exercises/097_bit_manipulation.zig 2025-05-12 21:25:03.395385743 +0200 ++++ answers/097_bit_manipulation.zig 2025-05-12 21:22:57.472986976 +0200 @@ -80,7 +80,7 @@ y ^= x; @@ -7,5 +7,5 @@ - ???; + x ^= y; - print("x = {d}; y = {d}\n", .{ x, y }); + print("x = {b}; y = {b}\n", .{ x, y }); }