Составить круговую диаграмму - PascalABC.NET

Узнай цену своей работы

Формулировка задачи:

Части света имеют площади (в млн. км): Европа -10,5; Азия – 44,4; Африка – 30, 32; Северная Америка – 24, 25; Южная Америка – 17, 83; Австралия с Океанией – 8,504; Антарктида – 14,11. Составьте круговую диаграмму, изображающую площади частей света.

Решение задачи: «Составить круговую диаграмму»

textual
Листинг программы
Uses 
  GraphAbc;
 
begin
  var data := Arr(
    (10.5, 'Европа', clYellow),
    (44.4, 'Азия', clLime),
    (30.32, 'Африка', clBrown),
    (24.5, 'Северная Америка', clRed),
    (17.83, 'Южная Америка', clGreen),
    (8.504, 'Австралия с Океанией', clGray),
    (14.11, 'Антарктида', clMagenta)
  );
  
  setWindowSize(600, 600);
  SetFontSize(10);
  var sum := data.Sum(v -> v[0]);
  data.Numerate(0).Aggregate(0, (a, b) ->
                                begin
                                  var inf := b[1];
                                  result := a + round(inf[0] * 360 / sum) + 1;
                                  SetBrushColor(inf[2]);
                                  Pie(200, 240, 140, a, result);
                                  textout(400, b[0] * 25, inf[1]);
                                  textout(550, b[0] * 25, floattostr(inf[0]));
                                end);
end.

Объяснение кода листинга программы

  1. Создание круговых диаграмм на основе данных, представленных в виде списка, где каждый элемент списка содержит название континента, его площадь и цвет.
  2. Установка размера окна и размера шрифта.
  3. Вычисление общей суммы площадей континентов.
  4. Изменение цвета кисти для каждого элемента списка, чтобы соответствовать указанному цвету континента.
  5. Построение круговых диаграмм для каждого элемента списка, указывая центральную точку, радиус, начальный угол и угол разброса для каждой диаграммы.
  6. Вывод названия континента и его площади на график.
  7. Закрытие программы.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 3.75 из 5
Похожие ответы