Time and Numeric Utilities
Absolute Difference
Absolute value turns a signed difference into a distance from a target.
abs
`std::abs` returns the magnitude of a number without its sign.
difference
Subtracting two values gives a signed difference; applying absolute value gives distance.
Absolute Difference
absolute_difference.cpp
Replay: real traced execution (multi-file project)
#include <cstdlib>
#include <iostream>
int main() {
int measured = -7;
int target = 5;
int delta = measured - target;
int distance = std::abs(delta);
std::cout << "measured=" << measured << std::endl;
std::cout << "delta=" << delta << std::endl;
std::cout << "distance=" << distance << std::endl;
return 0;
}
#include <cstdlib>
#include <iostream>
int main() {
int measured = -12;
int target = 5;
int delta = measured - target;
int distance = std::abs(delta);
std::cout << "measured=" << measured << std::endl;
std::cout << "delta=" << delta << std::endl;
std::cout << "distance=" << distance << std::endl;
return 0;
}
#include <cstdlib>
#include <iostream>
int main() {
int measured = 3;
int target = 5;
int delta = measured - target;
int distance = std::abs(delta);
std::cout << "measured=" << measured << std::endl;
std::cout << "delta=" << delta << std::endl;
std::cout << "distance=" << distance << std::endl;
return 0;
}
measured ← -7, target ← 5, delta ← -12, distance ← 12
4int main() {5 int measured→ -7 = -7; //@measured=3, -1267 int target→ 5 = 5;8 int delta→ -12 = measured-7 - target5;9 int distance→ 12 = std::abs(delta-12);1011 std::cout << "measured=" << measured-7 << std::endl;12 std::cout << "delta=" << delta-12 << std::endl;13 std::cout << "distance=" << distance12 << std::endl;14 return 0;15}outputmeasured=-7 delta=-12 distance=12
measured ← -12, target ← 5, delta ← -17, distance ← 17
4int main() {5 int measured→ -12 = -12;67 int target→ 5 = 5;8 int delta→ -17 = measured-12 - target5;9 int distance→ 17 = std::abs(delta-17);1011 std::cout << "measured=" << measured-12 << std::endl;12 std::cout << "delta=" << delta-17 << std::endl;13 std::cout << "distance=" << distance17 << std::endl;14 return 0;15}outputmeasured=-12 delta=-17 distance=17
measured ← 3, target ← 5, delta ← -2, distance ← 2
4int main() {5 int measured→ 3 = 3;67 int target→ 5 = 5;8 int delta→ -2 = measured3 - target5;9 int distance→ 2 = std::abs(delta-2);1011 std::cout << "measured=" << measured3 << std::endl;12 std::cout << "delta=" << delta-2 << std::endl;13 std::cout << "distance=" << distance2 << std::endl;14 return 0;15}outputmeasured=3 delta=-2 distance=2