Mercurial > public > cpp-enigma
diff enigma/enigma_utils.h @ 1:1459e74fda3f
Finished creating rotor class and factories.
author | Brian Neal <bgneal@gmail.com> |
---|---|
date | Fri, 22 Jun 2012 20:15:11 -0500 |
parents | |
children | 2792ca4ffa84 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/enigma/enigma_utils.h Fri Jun 22 20:15:11 2012 -0500 @@ -0,0 +1,22 @@ +#ifndef CPP_ENIGMA_ENIGMA_UTILS_H +#define CPP_ENIGMA_ENIGMA_UTILS_H +// Copyright (C) 2012 by Brian Neal. +// This file is part of Cpp-Enigma, the Enigma Machine simulation. +// Cpp-Enigma is released under the MIT License (see License.txt). +// +// enigma_utils.h - This file contains common functions used throughout Cpp-Enigma. + +namespace enigma +{ + // This version of mod acts like Python's with respect to negative dividends. + inline int alpha_mod(int dividend) + { + if (dividend < 0) + { + dividend += 26; + } + return dividend % 26; + } +} + +#endif