Стандартно отрицательные числа хранятся в памяти в дополнительном коде.
-3464 = -(2048 + 1024 + 256 + 128 + 8) = -(2^11 + 2^10 + 2^8 + 2^7 + 2^3) = 1|000 1101 1000 1000 (в прямом коде) = 1|111 0010 0111 0111 (в обратном коде) + 1 = 1|111 0010 0111 1000 (в дополнителтном коде)
Потому что условный оператор проверяет выражение на истинность. Если истина то выполнится одна ветка, если ложь то другая ветка конструкции ветвления.
Просто сумма квадратов?
var
i, n: integer;
a, s: real;
begin
s := 0;
read(n);
for i := 1 to n do
begin
read(a);
s := s + a * a
end;
write(s)
<span>end.</span>
3F в шестнадцатеричной = 3×16+15=63 в десятичной