Загрузка данных


uses GraphABC;

var
  a: array[1..10] of integer;
  i, n, s, u0, u1: integer;

begin
  // 1. Ввод исходных данных в консоли
  write('Количество n = ');
  readln(n);
  writeln(n); // Вывод в консоль для наглядности
  
  writeln('Элементы массива: ');
  for i := 1 to n do
  begin
    read(a[i]);
    write(a[i], ' ');
  end;
  writeln;
  
  // 2. Подсчет суммы всех элементов для вычисления долей
  s := 0;
  for i := 1 to n do
    s := s + a[i];
    
  // Исходный угол (начало отрисовки первого сектора)
  u0 := 0;
  for i := 1 to n do
  begin
    u1 := u0 + trunc(a[i] * 360 / s);
    SetBrushColor(clRandom);
    Pie(150, 150, 100, u0, u1);
    u0 := u1;
  end;
end.