I am doing something in coding where it multiplies a number by from 1 to 27. I need to make a fail safe, where no number can be over this. Rounding to 2^32/2^64 would not work. It needs so be 32 bits so it can both support 32 and 64 bit OS's.
If you want to multiply 3 by 5, but know the maximum allowed result is 10, you can easily tell that 3 is too large because 3 > 10/5. That’s all there’s to it :)
Since you insist on using a 32-bit type, and I assume your programming language is C, the maximum value int32_t
can represent is INT32_MAX
- those two come from #include <stdint.h>
.
But you may be mistaken in your assumption about being limited to 32-bit types: int64_t
works on most if not all major 32-bit platforms :)