/****************************************************************************** * This program demonstrates the math integer functions. * * Copyright © 2020 Richard Lesh. All rights reserved. *****************************************************************************/ #include #include #include #include #include #include using namespace std; int main(int argc, char **argv) { int const a = 5; int const b = 10; int const c = -2; // abs, floor, ceil, round, trunc, min, max cout << fmt::format("abs({0:d}) = {1:d}", a, abs(a)) << endl; cout << fmt::format("abs({0:d}) = {1:d}", c, abs(c)) << endl; cout << fmt::format("min({0:d}, {1:d}) = {2:d}", a, b, min(a, b)) << endl; cout << fmt::format("max({0:d}, {1:d}) = {2:d}", a, b, max(a, b)) << endl; cout << fmt::format("min({0:d}, {1:d}) = {2:d}", b, c, min(b, c)) << endl; cout << fmt::format("max({0:d}, {1:d}) = {2:d}", b, c, max(b, c)) << endl; // random numbers srand(time(0)); cout << fmt::format("random({0:d}) = {1:d}", a, int(a * (rand()/(RAND_MAX + 1.0)))) << endl; cout << fmt::format("random({0:d}) = {1:d}", a, int(a * (rand()/(RAND_MAX + 1.0)))) << endl; cout << fmt::format("random({0:d}) = {1:d}", a, int(a * (rand()/(RAND_MAX + 1.0)))) << endl; cout << fmt::format("random({0:d}) = {1:d}", a, int(a * (rand()/(RAND_MAX + 1.0)))) << endl; cout << fmt::format("random({0:d}) = {1:d}", a, int(a * (rand()/(RAND_MAX + 1.0)))) << endl; cout << fmt::format("random({0:d}) = {1:d}", b, int(b * (rand()/(RAND_MAX + 1.0)))) << endl; cout << fmt::format("random({0:d}) = {1:d}", b, int(b * (rand()/(RAND_MAX + 1.0)))) << endl; cout << fmt::format("random({0:d}) = {1:d}", b, int(b * (rand()/(RAND_MAX + 1.0)))) << endl; cout << fmt::format("random({0:d}) = {1:d}", b, int(b * (rand()/(RAND_MAX + 1.0)))) << endl; cout << fmt::format("random({0:d}) = {1:d}", b, int(b * (rand()/(RAND_MAX + 1.0)))) << endl; cout << fmt::format("random(2) = {0:d}", int(2 * (rand()/(RAND_MAX + 1.0)))) << endl; cout << fmt::format("random(2) = {0:d}", int(2 * (rand()/(RAND_MAX + 1.0)))) << endl; cout << fmt::format("random(2) = {0:d}", int(2 * (rand()/(RAND_MAX + 1.0)))) << endl; cout << fmt::format("random(2) = {0:d}", int(2 * (rand()/(RAND_MAX + 1.0)))) << endl; cout << fmt::format("random(2) = {0:d}", int(2 * (rand()/(RAND_MAX + 1.0)))) << endl; cout << fmt::format("random() = {0:f}", rand()/(RAND_MAX + 1.0)) << endl; cout << fmt::format("random() = {0:f}", rand()/(RAND_MAX + 1.0)) << endl; cout << fmt::format("random() = {0:f}", rand()/(RAND_MAX + 1.0)) << endl; cout << fmt::format("random() = {0:f}", rand()/(RAND_MAX + 1.0)) << endl; cout << fmt::format("random() = {0:f}", rand()/(RAND_MAX + 1.0)) << endl; return 0; }