27 lines
661 B
Zig
27 lines
661 B
Zig
const std = @import("std");
|
|
|
|
fn add(a: i32, b: i32) i32 {
|
|
return a + b;
|
|
}
|
|
|
|
fn mul(a: i32, b: i32) i32 {
|
|
return a * b;
|
|
}
|
|
|
|
fn min(a: i32, b: i32) i32 {
|
|
return @min(a, b);
|
|
}
|
|
|
|
fn max(a: i32, b: i32) i32 {
|
|
return @max(a, b);
|
|
}
|
|
|
|
pub fn main() void {
|
|
const arr: [5]i32 = .{ 1, 2, 3, 4, 5 };
|
|
std.debug.print("Array: {any}\n", .{arr});
|
|
std.debug.print(" * Reduce with add: {d}\n", .{reduce(i32, add, &arr)});
|
|
std.debug.print(" * Reduce with mul: {d}\n", .{reduce(i32, mul, &arr)});
|
|
std.debug.print(" * Reduce with min: {d}\n", .{reduce(i32, min, &arr)});
|
|
std.debug.print(" * Reduce with max: {d}\n", .{reduce(i32, max, &arr)});
|
|
}
|