В вашем цикле вы никогда не обновите circuit
. Так что он будет всегда цикл с одним и тем же символом и выполнит одну и ту же ветку if!
Непонятно, если num
где-то инициализируется. Кроме того, неясно, как вы найдете конец вашего массива.
Так что лучше сделайте строку string
и рассмотрите цикл вроде:
for (int i=0; num<line.size(); i++) {
circuit=line[i];
...
}
И, пожалуйста, не возвращайтесь назад в индексе: так что я для изучения символов и num для суммы