aboutsummaryrefslogtreecommitdiff
path: root/src/libs/math.cc
blob: 27f009a51b1b21f28a0b35efaa895c10f4a6f181 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include "math.hpp"

u32 pow(u32 x, u32 n) {
  if (n < 0)
    return -1;
  else if (n == 0)
    return 1;
  else if (n == 1)
    return x;
  u32 ret = x;
  for (u32 i = 0; i < (n - 1); i++)
    ret *= x;
  return ret;
}

u32 max(u32 x, u32 y) {
  if (x > y)
    return x;
  return y;
}

u32 min(u32 x, u32 y) {
  if (x < y)
    return x;
  return y;
}

u32 abs(u32 x) {
  if (x < 0)
    return -x;
  return x;
}