ТутРешу.Ру

Проблема такая: нужна правильно выполненная задача в формате Паскаль!

Задание:

Проблема такая: нужна правильно выполненная задача в формате Паскаль! Помогите пожалуйста!

Решение:

Program p4; var s1, s2, s3: string; a, b, c, i, k: integer; l: char; begin writeln ('Введите первое число, состоящее из 0 и 1'); readln (s1); writeln ('Введите второе число, состоящее из 0 и 1'); readln (s2); a: =length (s1); b: =length (s2); c: =a — b; if c > 0 then begin for i: =1 to a+1 do s3: =s3+'0'; k: =1; end else begin for i: =1 to b+1 do s3: =s3+'0'; k: =0; end; if k=0 then c: =b — a; while c <> 0 do begin if k=0 then s1: ='0'+s1 else s2: ='0'+s2; c: =c — 1; end; for i: =2 to length (s3) do begin if s1[i — 1]='1' then if s2[i — 1]='1' then s3[i]: ='2' else s3[i]: ='1' else if s2[i — 1]='1' then s3[i]: ='1' else s3[i]: ='0'; end; for i: =length (s3) downto 2 do begin if (s3[i]='2') or (s3[i]='3') then begin l: =s3[i]; c: =ord (l); c: =c — 2; l: =chr (c); s3[i]: =l; l: =s3[i — 1]; c: =ord (l); c: =c+1; l: =chr (c); s3[i — 1]: =l; end; end; if s3[1]='0' then delete (s3,1,1); writeln ('Результат сложения ', s3); end. Вот, к примеру. Сумма двух длинных чисел в двоичной системе. Не оптимально, но пашет




Знаете другой ответ?

Отправить свой ответ