2021-01-10 16:46:42 +00:00
|
|
|
//
|
|
|
|
// The last two exercises were functionally identical. Continue
|
|
|
|
// expressions really show their utility when used with 'continue'
|
|
|
|
// statements!
|
|
|
|
//
|
|
|
|
// Example:
|
|
|
|
//
|
|
|
|
// while (condition) : (continue expression){
|
2021-02-07 16:06:51 +00:00
|
|
|
//
|
2021-01-10 16:46:42 +00:00
|
|
|
// if(other condition) continue;
|
2021-02-07 16:06:51 +00:00
|
|
|
//
|
2021-01-10 16:46:42 +00:00
|
|
|
// }
|
|
|
|
//
|
2021-02-07 16:06:51 +00:00
|
|
|
// The "continue expression" executes every time the loop restarts
|
|
|
|
// whether the "continue" statement happens or not.
|
2021-01-10 16:46:42 +00:00
|
|
|
//
|
|
|
|
const std = @import("std");
|
|
|
|
|
|
|
|
pub fn main() void {
|
|
|
|
var n: u32 = 1;
|
|
|
|
|
|
|
|
// I want to print every number between 1 and 20 that is NOT
|
|
|
|
// divisible by 3 or 5.
|
|
|
|
while (n <= 20) : (n+=1) {
|
2021-01-19 01:18:49 +00:00
|
|
|
// The '%' symbol is the "modulo" operator and it
|
|
|
|
// returns the remainder after division.
|
2021-01-10 16:46:42 +00:00
|
|
|
if(n % 3 == 0) ???;
|
|
|
|
if(n % 5 == 0) ???;
|
|
|
|
std.debug.print("{} ", .{n});
|
|
|
|
}
|
|
|
|
|
|
|
|
std.debug.print("\n", .{});
|
|
|
|
}
|