Имеется два числа длинной до 254 символов. Ваша программа должна выдать их сумму — Pascal(Паскаль)

uses crt;
var
s,s1:string;
a:array[1..300]of integer;
x,y,z,buf,code,i,k:integer;
begin
readln(s,s1);
For i:=length(s) downto 1 do
begin
val(s[i],x,code);
val(s1[length(s1)-k],y,code);
inc(k);
z:=x+y;
if z>=10 then
begin
buf:=z div 10;
a[i-1]:=buf;
a[i]:=a[i]+(z mod 10);
end else begin a[i]:=buf+z;buf:=0; end;
end;
For i:=1 to length(s) do
write(a[i]);
end.

Вариант 2

uses crt;
var a,b,c:array[1..255] of byte;
    i,k,n:byte;
begin
 clrscr;
 randomize;
 writeln('n ');
 readln(n);
 
 for i:=1 to n do
  begin
   a[i]:=random(10);
   b[i]:=random(10);
  end;
 
  for i:=1 to n do
   write(a[i],' ');
 
  writeln;
 
  writeln('+');
 
  for i:=1 to n do
   write(b[i],' ');
 
 
 
 for i:=n+1 downto 2 do
  begin
  c[i]:=c[i]+(a[i-1]+b[i-1]) mod 10;
  c[i-1]:=(a[i-1]+b[i-1]) div 10;
  end;
  writeln;
  writeln('=');
 if c[1]<>0 then write(c[1],' ');
 for i:=2 to n+1 do
  write(c[i],' ');
  readln;
 
end.

Leave a Comment

1 + 4 =