Как ответить
2 + 2 = 4. Это сложение двух целых чисел на десятичной системе счисления. Ответ тривиален для человека, но на собеседовании я бы уточнил контекст: в какой системе счисления, какие типы данных и какая операция — потому что в разработке результат может отличаться от ожидаемого.
Если мы говорим о десятичной системе (основание 10), то результат сложения чисел 2 и 2 — 4. Это аксиома для арифметики, не требующая доказательств. В двоичной системе (основание 2) 2 представляется как 10, и 10 + 10 = 100, что в десятичной — тоже 4. В шестнадцатеричной системе 2 + 2 = 4, потому что 4 меньше основания 16.
Но в программировании есть нюансы. В языках со строгой типизацией, если мы складываем два целых числа (int), результат — 4. Если одно из чисел — строка, например '2' + 2 в JavaScript, то результат — строка '22'. В Python 2 + 2.0 вернёт 4.0 (float). В SQL при сложении NULL + 2 результат — NULL. В ассемблере для 8-битного регистра 2 + 2 = 4, но если сложить 127 + 2, получится переполнение и результат — -127 в signed представлении.
Также есть математические системы, где 2 + 2 ≠ 4. Например, в арифметике по модулю 3: 2 + 2 = 4 mod 3 = 1. В булевой алгебре 2 не существует, но если рассматривать битовые операции: 2 в двоичном виде — 10, и 10 XOR 10 = 00 (0), а 10 AND 10 = 10 (2).
Для разработчика важно понимать, что ответ зависит от контекста: тип данных, система счисления, переполнение, обработка ошибок. В простейшем случае — 4.
Код для проверки на Python:
assert 2 + 2 == 4
print('2 + 2 =', 2 + 2) # Вывод: 2 + 2 = 4