by@kurgm
WA
IDENTIFICATION DIVISION. PROGRAM-ID. IDEONE. ENVIRONMENT DIVISION. DATA DIVISION. WORKING-STORAGE SECTION. 01 b PIC X(100) . 01 i PIC 9(3) . 01 du PIC 9(15) VALUE 0. 01 dl PIC 9(16) VALUE 0. 01 d PIC X(31) . 01 m PIC 9(16) VALUE 1000000000000000. 01 c PIC 9 . 01 q PIC 9 . 01 r PIC 9(16) . PROCEDURE DIVISION. ACCEPT b PERFORM VARYING i FROM 1 BY 1 UNTIL i > 100 COMPUTE du = du * 2 COMPUTE dl = dl * 2 MOVE b(i:1) TO c COMPUTE dl = dl + c DIVIDE dl BY m GIVING q REMAINDER r MOVE r TO dl COMPUTE du = du + q END-PERFORM. STRING du dl INTO d END-STRING. DISPLAY d. STOP RUN.
1100011011010101111000000001101110110110011011110010000011000000000111000101101010101010111010101110
9845854634480680068147265711790