logo
Курс лекций по математике

82. Алгоритм сложения

Сложение однозначных чисел можно выполнить, основываясь на определении этого действия, но чтобы всякий раз не обращаться к оп­ределению, все суммы, которые получаются при сложении однознач­ных чисел, записывают в особую таблицу, называемую таблицей сло­жения однозначных чисел, и запоминают.

Естественно, смысл сложения сохраняется и для многозначных чисел, но практическое выполнение сложения происходит по особым правилам. Сумму многозначных чисел обычно находят, выполняя сложе­ние столбиком. Например,

+ 341

7238

7579

Выясним, каким образом возникает этот алгоритм, какие теорети­ческие положения лежат в его основе.

Представим слагаемые 341 и 7238 в виде суммы степеней десяти с коэффициентами:

341 + 7238 = (3∙102 + 4∙10 + 1) + (7∙103 + 2∙102 + 3∙10 + 8). Раскроем скобки в полученном выражении, поменяем местами и сгруп­пируем слагаемые так, чтобы единицы оказались рядом с единицами, десятки с десятками и т.д. Все эти преобразования можно выполнить на основании соответствующих свойств сложения. Свойство ассоциа­тивности разрешает записать выражение без скобок: 3∙102 + 4∙10 + 1 + 7∙103 + 2∙102 + 3∙10 + 8.

На основании свойства коммутативности поменяем местами сла­гаемые: 7∙103 + 3∙102 + 2∙102 + 4∙10 + 3∙10 + 1+8. Согласно свойству ассоциативности, произведем группировку: 7∙103 + (3∙102 + 2∙102 ) + (4∙10 + 3∙10) + (1 + 8). Вынесем за скобки в первой выделенной группе число 102, а во второй - 10. Это можно сделать в соответствии со свойством дистрибутивности умножения относительно сложения: 7∙103 + 5∙102 + 7∙10 + 9.

Итак, сложение данных чисел 341 и 7238 свелось к сложению одно­значных чисел, изображенных цифрами соответствующих разрядов. Эти суммы находим по таблице сложения. Полученное выражение есть десятичная запись числа 7579.

Видим, что в основе алгоритма сложения многозначных чисел ле­жат следующие теоретические факты:

Нетрудно убедиться в том, что в случае сложения чисел «с переходом через десяток» теоретические основы алгоритма сложения будут теми же. Рассмотрим, например, сумму 748 + 436.

Представим слагаемые в виде суммы степеней десяти с соответст­вующими коэффициентами: (7∙102 + 4∙10 + 8) + (4∙102 + 3∙10 + 6). Воспользуемся свойствами сложения и дистрибутивностью умножения относительно сложения и преобразуем полученное выражение к такому виду: (7 + 4) ∙102 + (4 + 3) ∙10 + (8 + 6). Видим, что в этом случае сложение данных чисел также свелось к сложению однозначных чисел, но суммы 7 + 4, 8 + 6 превышают 10 и поэтому последнее выражение не является десятичной записью числа. Необходимо сделать так, чтобы коэффици­енты перед степенями 10 оказались меньше 10. Для этого выполним ряд преобразований. Сначала сумму 8 + 6 представим в виде 1∙10 + 4:

Затем воспользуемся свойствами сложения и умножения и приведем .Полученное выражение к виду: (7 + 4) ∙102 + (4 + 3 + 1) ∙10 + 4. Суть последнего преобразования такова: десяток, который получился при 1 сложении единиц, прибавим к десяткам данных чисел. И наконец, записав сумму 7 + 4 в виде 1∙10+ 1, получаем: (1 ∙ 10 + 1)102 + 8∙10 + 4. Последнее выражение есть десятичная запись числа 1184. Следователь­но. 748+436= 1184.

Выведем алгоритм сложения многозначных чисел в общем виде. Пусть даны числа:

х = an ·10n + a n-1 ·10n-1 + ... +а10 + а0,

у = bn ·10n + b n-1 ·10n-1 + ... +b10 + b0,

х + у =(an + bn ) ·10n + ( a n-1 + b n-1 ) ·10n-1 + ... + ( а1+b1 ) ·10 + ( а0 + b0)

- преобразования выполнены на основе свойств ассоциативности и коммутативности

сложения, а также дистрибутивности умножения относительно сложения.

Лишь в случае, когда все суммы aк + bк не превосходят 9, операцию сложения можно считать законченной. В противном случае выбираем наименьшее к, для которого ак + bк > 10. Если ак + bк > 10, то из того, что 0 <ак < 9 и 0 < bк < 9, следует неравенство 0 < ак + bк < 18 и поэтому ак + bк можно представить и виде ак + bк = 10 + ск, где 0 < ск < 9. Но тогда к + bк) ·10к = (10 + ск) ·10 к = 10 к +1 + ск ·10 и т.д.

В случае когда десятичные записи слагаемых имеют разное количество цифр, надо приписать к числу, имеющему меньшее количество цифр, несколько нулей впереди, уравняв количество цифр в обоих слагаемых. После этого применяется описанный выше процесс сложения.

В общем виде алгоритм сложения натуральных чисел, записанных и десятичной системе счисления, формулируют так:

  1. Записывают второе слагаемое под первым так, чтобы соответствующие разряды находились друг под другом.

  2. Складывают единицы первого разряда. Если сумма меньше деся­ти, записывают ее в разряд единиц ответа и переходят к следующему разпряду (десятков).

  1. Если сумма единиц больше или равна десяти, то представляют ее в виде ао + Ьо~ 1 • 10 + с0, где с0 - однозначное число; записывают с() в разряд единиц ответа и прибавляют 1 к десяткам первого сла­гаемого, после чего переходят к разряду десятков.

  2. Повторяют те же действия с десятками, потом с сотнями и т.д. Процесс заканчивается, когда оказываются сложенными цифры стар­ших разрядов. При этом, если их сумма больше или равна десяти, то приписываем впереди обоих слагаемых нули, увеличиваем нуль перед первым слагаемым на 1 и выполняем сложение 1+0=1.

Заметим, что в этом алгоритме (как и в некоторых других) для краткости употребляется термин «цифра» вместо «однозначное число, изображаемое цифрой».