Сайт работает в тестовом режиме - все замечания, предложения и информацию о найденных ошибках направляйте, пожалуйста, в Telegram-группу
Курс в процессе наполнения. Полный курс доступен на Степике

Баг: Неучёт переполнения при умножении

Сначала перемножаются числа в "маленьком" типе, и даже если результат сохранить в больший тип, переполнение уже случилось.

Пример:

var a uint8 = 200
var b uint8 = 3
c := uint16(a * b) // a*b уже 600 % 256 = 88, c = 88

Загрузка...