2021-01-10 11:46:42 -05:00
|
|
|
//
|
|
|
|
// Zig 'while' statements can have an optional 'continue expression'
|
|
|
|
// which runs every time the while loop continues (either at the
|
2021-02-15 01:03:30 -05:00
|
|
|
// end of the loop or when an explicit 'continue' is invoked - we'll
|
2021-01-10 11:46:42 -05:00
|
|
|
// try those out next):
|
|
|
|
//
|
2021-02-15 01:02:53 -05:00
|
|
|
// while (condition) : (continue expression) {
|
2021-01-10 11:46:42 -05:00
|
|
|
// ...
|
|
|
|
// }
|
|
|
|
//
|
|
|
|
// Example:
|
|
|
|
//
|
|
|
|
// var foo = 2;
|
2022-02-11 05:40:22 -05:00
|
|
|
// while (foo < 10) : (foo += 2) {
|
2021-01-10 11:46:42 -05:00
|
|
|
// // Do something with even numbers less than 10...
|
|
|
|
// }
|
|
|
|
//
|
|
|
|
// See if you can re-write the last exercise using a continue
|
|
|
|
// expression:
|
|
|
|
//
|
|
|
|
const std = @import("std");
|
|
|
|
|
|
|
|
pub fn main() void {
|
|
|
|
var n: u32 = 2;
|
|
|
|
|
2021-02-07 11:06:51 -05:00
|
|
|
// Please set the continue expression so that we get the desired
|
|
|
|
// results in the print statement below.
|
2021-01-10 11:46:42 -05:00
|
|
|
while (n < 1000) : ??? {
|
|
|
|
// Print the current number
|
|
|
|
std.debug.print("{} ", .{n});
|
|
|
|
}
|
|
|
|
|
2021-02-07 11:06:51 -05:00
|
|
|
// As in the last exercise, we want this to result in "n=1024"
|
2021-01-10 11:46:42 -05:00
|
|
|
std.debug.print("n={}\n", .{n});
|
|
|
|
}
|