mirror of
https://codeberg.org/andyscott/ziglings.git
synced 2024-11-08 11:20:46 -05:00
adf5ddb27d
I started off with "hints" that required the poor student to piece together the information from incomplete bits. A complete example is like a picture that is worth 1000 words and far clearer.
31 lines
904 B
Zig
31 lines
904 B
Zig
//
|
|
// Now let's create a function that takes a parameter. Here's an
|
|
// example that takes two parameters. As you can see, parameters
|
|
// are declared just like an other types ("name": "type"):
|
|
//
|
|
// fn myFunction( number: u8, is_lucky: bool ) {
|
|
// ...
|
|
// }
|
|
//
|
|
const std = @import( "std" );
|
|
|
|
pub fn main() void {
|
|
std.debug.print("Powers of two: {} {} {} {}\n", .{
|
|
twoToThe(1),
|
|
twoToThe(2),
|
|
twoToThe(3),
|
|
twoToThe(4),
|
|
});
|
|
}
|
|
|
|
//
|
|
// Please give this function the correct input parameter(s).
|
|
// You'll need to figure out the parameter name and type that we're
|
|
// expecting. The output type has already been specified for you.
|
|
//
|
|
fn twoToThe(???) u32 {
|
|
return std.math.pow(u32, 2, my_number);
|
|
// std.math.pow(type, a, b) takes a numeric type and two numbers
|
|
// of that type and returns "a to the power of b" as that same
|
|
// numeric type.
|
|
}
|