Вариант для вывода элементов массива в 8 позициях:
begin var a:=ArrRandom(ReadInteger('n='),-99,99); a.Select(t->Format('{0,8}',t)).Println(''); a:=a.Reverse.ToArray; a.Select(t->Format('{0,8}',t)).Println('') end.
//Pascal //Первый вариант var a, b:integer; BEGIN write('Введите первое число = '); readln(a); write('Введите второе число = '); readln(b); writeln(a-(-b)); END.
//--------------------------------------- //Второй вариант function recSumBits(a, b:integer):integer; var o1, o2: integer; begin if b = 0 then recSumBits := a else begin o1 := a xor b; o2 := (a and b) shl 1; recSumBits := recSumBits(o1, o2); end; end;
var a, b: integer; BEGIN write('Введите первое число = '); readln(a); write('Введите второе число = '); readln(b); writeln(recSumBits(a, b)); readln; END.
// Внимание! Если программа не работает, обновите версию!
begin
var a:=ArrRandom(ReadInteger('n='),-99,99); a.Println;
a:=a.Reverse.ToArray; a.Println
end.
Пример
n= 13
1 80 -54 36 84 -43 -88 43 36 9 -14 -19 -38
-38 -19 -14 9 36 43 -88 -43 84 36 -54 80 1
Вариант для вывода элементов массива в 8 позициях:
begin
var a:=ArrRandom(ReadInteger('n='),-99,99);
a.Select(t->Format('{0,8}',t)).Println('');
a:=a.Reverse.ToArray;
a.Select(t->Format('{0,8}',t)).Println('')
end.
//Первый вариант
var a, b:integer;
BEGIN
write('Введите первое число = '); readln(a);
write('Введите второе число = '); readln(b);
writeln(a-(-b));
END.
//---------------------------------------
//Второй вариант
function recSumBits(a, b:integer):integer;
var o1, o2: integer;
begin
if b = 0 then recSumBits := a
else
begin
o1 := a xor b;
o2 := (a and b) shl 1;
recSumBits := recSumBits(o1, o2);
end;
end;
var a, b: integer;
BEGIN
write('Введите первое число = '); readln(a);
write('Введите второе число = '); readln(b);
writeln(recSumBits(a, b));
readln;
END.