PascalABC.NET 3.6.2
begin
var S := ReadSeqIntegerWhile(p -> p <> 0).ToList;
var odd := S.Where(p -> p mod 2 <> 0).Count;
var even := S.Where(p -> p mod 2 = 0).Count;
var diff := abs(even - odd);
diff.Println;
end.
// PascalABC.NET
begin
var diff := 0;
ReadSeqIntegerWhile(p -> p <> 0)
.Foreach(p -> begin diff += p.IsOdd ? -p : p end);
diff.Print
end.