I'm coding this example that I've been having countless problems with (some conceptual, some stupid typos, like using the wrong variable), and now I'm getting this behavior where every so often (maybe one in five), a run will produce different numbers. There is no random, psuedorandom, quasirandom, etc. behavior in the code. There aren't any raw pointers either, so I don't think accessing memory out of bounds of some structure can occur. My best guess is that there is some uninitialized variable that is usually something (like not zero) but occasionally something else (like zero), but I don't see it.