Проверять In.Done нужно после каждого вызова In.Int.## Код:
```
MODULE q;
   IMPORT In, StdLog;

   PROCEDURE aga*;
   VAR 
      q,w:INTEGER;
   BEGIN 
      w:=0;
      StdLog.Clear;
      In.Open; 
      In.Int(q); (* <- сюда *)
      WHILE In.Done DO
         (* In.Int(q); -> отсюда *)
         w:=w+q;
         StdLog.Int(w);
         StdLog.Ln;
         In.Int(q); (* <- и сюда *)
      END
   END aga;

END q.
```
