I m having an issue with my programming assignment where I cycle through a string and sum the integer value of character. As the following code states. Now I pass a string into this subroutine. For example given
num := 8888 ;
Expected Output would be
32
Resulting output is
-12
I m using fpc pascal compiler on a Linux environment. Any insight as to why this is occurring would be much appreciated
procedure subRoutine1(num : string);
var
i : byte;
value : integer;
sum : integer;
begin
sum := 0;
for i := 0 to length(num) do
begin
value := Integer(num[i]) - 48;
sum := sum + value;
end;
writeln(sum);
end;