program SumOfOddNumbers;
var
A: array of Integer;
n, i, odd_sum: Integer;
odd_indices: array of Integer;
begin
{ Nhập số phần tử của mảng }
write('Nhap so phan tu cua mang: ');
readln(n);
{ Khởi tạo mảng A với n số nguyên ngẫu nhiên không vượt quá 300 }
SetLength(A, n);
for i := 0 to n - 1 do
A[i] := Random(301); { Random số từ 0 đến 300 }
{ Tính tổng các số lẻ trong mảng A và đưa ra vị trí của chúng }
odd_sum := 0;
SetLength(odd_indices, 0);
for i := 0 to n - 1 do
begin
if A[i] mod 2 = 1 then { Nếu số lẻ }
begin
odd_sum := odd_sum + A[i];
SetLength(odd_indices, Length(odd_indices) + 1);
odd_indices[Length(odd_indices) - 1] := i;
end;
end;
{ In ra mảng A, tổng các số lẻ trong mảng và vị trí các số lẻ trong mảng }
writeln('Mang A: ');
for i := 0 to n - 1 do
write(A[i], ' ');
writeln;
writeln('Tong cac so le trong mang A: ', odd_sum);
write('Vi tri cac so le trong mang A: ');
for i := 0 to Length(odd_indices) - 1 do
write(odd_indices[i], ' ');
writeln;
readln;
end.