Чтобы преобразовать строку в целое число, возьмите каждый символ по очереди и, если он находится в диапазоне от 0 до 9, преобразуйте его в десятичный эквивалент. Обычно это просто вычитание значения символа «0». Теперь умножьте все предыдущие результаты на 10 и добавьте новое значение. Повторяйте, пока не останется никаких цифр. Если был знак «-» минус, инвертируйте результат.
Чтобы преобразовать целое число в строку, начните с обращения числа, если оно отрицательное. Разделите целое число на 10 и сохраните остаток. Преобразуйте остаток в символ, добавив символьное значение «0». Нажмите это в начало строки; Теперь повторите со значением, которое вы получили от деления. Повторяйте, пока разделенное значение не станет равным нулю. Поместите начальный знак «-» в минус, если число начиналось отрицательно.
Вот конкретные реализации в Python, который, на мой взгляд, является языком, наиболее близким к псевдокоду.
def string_to_int(s):
i = 0
sign = 1
if s[0] == '-':
sign = -1
s = s[1:]
for c in s:
if not ('0' <= c <= '9'):
raise ValueError
i = 10 * i + ord(c) - ord('0')
return sign * i
def int_to_string(i):
s = ''
sign = ''
if i < 0:
sign = '-'
i = -i
while True:
remainder = i % 10
i = i / 10
s = chr(ord('0') + remainder) + s
if i == 0:
break
return sign + s