A past puzzle — fully playable. 4 attempts, hints on wrong guesses.
stdle-136.cpp
1#include<iostream>
2intmain(){
3unsigneda=5;
4unsignedb=8;
5std::cout<<a-b<<"\n";
6}
Numbers
Answer & explanation
Console output
4294967293
Why
Unsigned arithmetic is modular: it is computed modulo 2^32. 5 - 8 would be -3, which wraps to 2^32 - 3 = 4294967293. This is fully defined behavior, not overflow, because unsigned types never overflow. They wrap.