Неправильно исполняет код С++. Почему программа неправильно обрабатывает условие?
Проблема в том, что условие в цикле do-while неправильно. Вместо "while (did <= total)" должно быть "while (did < total)".
В текущей реализации, когда did становится равным total, цикл продолжает выполняться еще одну итерацию, что приводит к неправильному выводу.