1) 15
2) 689
3) "А не написАть свою" - ага - разбираться в чужом топорном и неоптимизированном коде, а потом удивляются, а откуда столько багов в программах - так отчего ж им не быть, если нормально программированию не учат?

А что касается исправления - то я не знаю, какой язык Вы изучаете - ибо, если чисто скопируете мой ответ, но Ваш учитель информатики может поинтересоваться, откуда Вы знаете этот язык и может задать Вам лишнее задание. Ладно, т.к. я знаю несколько языков (а в данном случае - 3 из этих 4), то исправлю на 3 языках код. BASIC я, увы, не знаю, так что, если Вы изучаете BASIC, то я Вам тут не помощник...
Итак:
Python - строка, где sum=digit. Там надо дописАть либо sum=sum+digit либо sum+=digit.
АЛГОЛ (да, именно АЛГОЛ - потому что так-то все языки программирования являются алгоритмическими. Самый-самый из них - конечно, АЛГОЛ - именно в его названии аббревиатура от этого словосочетания, и именно его урезанную версию часто именуют так длинно, либо сокращая до Кумира, но, простите, но лично я предпочитаю называть вещи своими именами + так и короче получается в случае с этим языком.). Итак, АЛГОЛ: впрочем, тут аналогичная ошибка: надо добавить "sum+" в строку, где "sum:=".
Pascal (да и здесь такая же ошибка с таким же исправлением). Т.е. sum:=sum+digit должно быть.
Судя по всему, в BASIC тоже они эту же ошибку запихнули, и там исправление, соответственно, такое же, т.е. SUM=SUM+DIGIT.
Итого (т.к. в задании нужно указать еще и номер строки, содержащей ошибку): BASIC - 7-ая строка, Python - 6-ая, АЛГОЛ и Pascal - 9-ая. (Да, забыл: строки нумеруются сверху вниз).