64 lines
1.5 KiB
Text
64 lines
1.5 KiB
Text
#ifndef AUXFUNCTIONS_H_INCLUDED
|
|
#define AUXFUNCTIONS_H_INCLUDED
|
|
|
|
#include "../global.h"
|
|
|
|
inline float randomWithinBorders(float base, float variance) {
|
|
int intVariance = (int)(1e4 * variance);
|
|
return (1e4 * base + (rand() % (2 * intVariance + 1) - intVariance)) / 1e4;
|
|
}
|
|
|
|
inline int randomIntWithinBorders(int base, int variance) {
|
|
return base + (rand() % (2 * variance + 1) - variance);
|
|
}
|
|
|
|
inline int randomPlusOrMinus() {
|
|
return rand() % 2 ? 1 : -1;
|
|
}
|
|
|
|
|
|
inline int larger(int a, int b) {
|
|
return a > b ? a : b;
|
|
}
|
|
|
|
inline int smaller(int a, int b) {
|
|
return a < b ? a : b;
|
|
}
|
|
|
|
inline float largerF(float a, float b) {
|
|
return a > b ? a : b;
|
|
}
|
|
|
|
inline float smallerF(float a, float b) {
|
|
return a < b ? a : b;
|
|
}
|
|
|
|
|
|
inline void putInsideInterval(int min, int* a, int max) {
|
|
*a = largerF(min, smallerF(*a, max));
|
|
}
|
|
|
|
inline void putInsideIntervalF(float min, float* a, float max) {
|
|
*a = largerF(min, smallerF(*a, max));
|
|
}
|
|
|
|
|
|
inline float dist(int a, int b) {
|
|
return sqrt(a*a + b*b);
|
|
}
|
|
|
|
inline float fDist(float a, float b) {
|
|
return sqrt(a*a + b*b);
|
|
}
|
|
|
|
inline float square(float a) {
|
|
return a*a;
|
|
}
|
|
|
|
//++print + int = print xd
|
|
inline void print(int a) {
|
|
printf("%d\n", a);
|
|
}
|
|
|
|
|
|
#endif // AUXFUNCTIONS_H_INCLUDED
|