mirror of
https://github.com/ziglang/zig.git
synced 2024-11-27 15:42:49 +00:00
b56b4428a3
Some handling of register_c_flag/register_v_flag was incorrect.
25 lines
422 B
Zig
25 lines
422 B
Zig
pub fn main() void {
|
|
assert(fib(0) == 0);
|
|
assert(fib(1) == 1);
|
|
assert(fib(2) == 1);
|
|
assert(fib(3) == 2);
|
|
assert(fib(10) == 55);
|
|
assert(fib(20) == 6765);
|
|
}
|
|
|
|
fn fib(n: u32) u32 {
|
|
if (n < 2) {
|
|
return n;
|
|
} else {
|
|
return fib(n - 2) + fib(n - 1);
|
|
}
|
|
}
|
|
|
|
fn assert(ok: bool) void {
|
|
if (!ok) unreachable;
|
|
}
|
|
|
|
// run
|
|
// target=x86_64-linux,x86_64-macos,arm-linux,wasm32-wasi
|
|
//
|