янаневолина
17.03.2022 08:14

Паскаль переписать через процедуры и функции Даны два очень длинных целых числа (возможные значения превышают диапазон значений longint). Сложите эти числа
Program hellow;
var
s1, s2, s3: string;
n1, n2, n3, l1, l2, l3, i: byte;
c: string[1];
begin
readln(s1);
readln(s2);
l1 := length(s1);
l2 := length(s2);
if l1 > l2 then begin
s3 := s1; l3 := l1;
s1 := s2; l1 := l2;
s2 := s3; l2 := l3;
end;
s3 := ''; n3 := 0;
for i := l1 downto 1 do begin
val(s1[i], n1);
val(s2[l2], n2);
l2 := l2 - 1;
str((n1 + n2 + n3) mod 10, c);
s3 := c + s3;
if n1 + n2 + n3 > 9 then
n3 := 1
else n3 := 0;
end;
while n3 = 1 do begin
if l2 <> 0 then begin
val(s2[l2], n2);
l2 := l2 - 1;
str((n2 + n3) mod 10, c);
s3 := c + s3;
if n2 + n3 < 10 then
n3 := 0;
end
else begin
s3 := '1' + s3;
n3 := 0;
end;
end;
if l2 <> 0 then
s3 := copy(s2, 1, l2) + s3;
writeln(s3);
end.

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
rinett
20.07.2020 16:10
Const
   N = 3;
   M = 4;
Var
   T:array[1..N,1..M] of integer;
   i,j:integer;
Begin
Randomize;
WriteLn('Было:');
For i:= 1 to N do
    Begin
    For j:= 1 to M do
        Begin
        T[i,j]:=random(3000);
        Write(T[i,j]:6,' ');
        if (99 < T[i,j])and(T[i,j]<1000)and(T[i,j] mod 7 = 0) then T[i,j]:=T[i,j]-10;
        End;
    WriteLn
    End;
WriteLn('Стало:');
For i:= 1 to N do
    Begin
    For j:= 1 to M do
       Write(T[i,j]:6,' ');
    WriteLn
    End;
End.

Было:
  2280    893   1825     21
   491     97    666    402
  1961   2639   1873   1069
Стало:
  2280    893   1825     21
   491     97    666    402
  1961   2639   1873   1069
0,0(0 оценок)
Ответ:
nlenp6635Alena0lo
20.07.2020 16:10
Const n=4; m=5;
var a:array[1..n,1..m] of integer;
i,j:integer;
begin
for i:=1 to n do
 begin
 for j:=1 to m do
  begin
  a[i,j]:=random(1000);
  write(a[i,j]:4);
  end;
 writeln;
 end;
for i:=1 to n do
 for j:=1 to m do
   if (a[i,j] mod 7=0)and(a[i,j]>99)and(a[i,j]<1000) then a[i,j]:=a[i,j]-10;
writeln('New:');
for i:=1 to n do
  begin
 for j:=1 to m do write(a[i,j]:4);
 writeln;
 end;
end.

Пример889 188 17 186 772
394 121 406 679 936
 20 147 868 691 450
525 73 575 232 416
New:
879 188 17 186 772
394 121 396 669 936
 20 137 858 691 450
515 73 575 232 416
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота