Пожалуйста, составьте программу на языке Паскаль, которая построит круговую диаграмму для демонстрации здорового

Пожалуйста, составьте программу на языке Паскаль, которая построит круговую диаграмму для демонстрации здорового питания, состоящего из 15% белков, 20% жиров и 65% углеводов.
Звездопад_На_Горизонте

Звездопад_На_Горизонте

Конечно, я помогу вам составить программу на языке Паскаль для построения круговой диаграммы, которая будет демонстрировать соотношение здорового питания, состоящего из 15% белков, 20% жиров и 65% углеводов.

Вот код программы:

pascal
program CircleDiagram;

uses crt, graph;

var
gd, gm, midx, midy, radius: integer;
proteinAngle, fatAngle, carbAngle: real;

begin
gd := D4bit;
gm := Detect;

InitGraph(gd, gm, "");

if GraphResult <> grOk then
begin
Writeln("Ошибка при инициализации графического режима");
Halt(1);
end;

midx := GetMaxX div 2; // определение середины по X
midy := GetMaxY div 2; // определение середины по Y

radius := 150; // установка радиуса диаграммы

// вычисление углов, соответствующих процентам белков, жиров и углеводов
proteinAngle := 360 * (15 / 100);
fatAngle := 360 * (20 / 100);
carbAngle := 360 * (65 / 100);

// рисуем круговую диаграмму
SetColor(RED);
PieSlice(midx, midy, 0, Round(proteinAngle), radius); // секция для белков
SetColor(GREEN);
PieSlice(midx, midy, Round(proteinAngle), Round(proteinAngle + fatAngle), radius); // секция для жиров
SetColor(BLUE);
PieSlice(midx, midy, Round(proteinAngle + fatAngle), Round(proteinAngle + fatAngle + carbAngle), radius); // секция для углеводов

ReadLn;
CloseGraph;
end.


Давайте разберем этот код подробнее.

1. Сначала мы объявляем необходимые переменные: `gd`, `gm`, `midx`, `midy`, `radius`, `proteinAngle`, `fatAngle`, и `carbAngle`. `gd` и `gm` используются для инициализации графического режима. `midx` и `midy` представляют середину окна вывода графики (мы возьмем их половину для центрирования круговой диаграммы). `radius` - это радиус круговой диаграммы. `proteinAngle`, `fatAngle` и `carbAngle` представляют углы для секций белков, жиров и углеводов соответственно.

2. Затем мы инициализируем графический режим с помощью `InitGraph` и проверяем результат инициализации с помощью `GraphResult`. Если результат отличается от `grOk`, выводим сообщение об ошибке и завершаем программу.

3. Далее мы определяем `midx` и `midy` как половины ширины и высоты экрана с помощью `GetMaxX` и `GetMaxY`.

4. Задаем значение переменной `radius`, которое равно 150 пикселей. Это будет радиусом круговой диаграммы.

5. Рассчитываем углы `proteinAngle`, `fatAngle`, и `carbAngle`, соответствующие заданным процентам белков, жиров и углеводов. Например, `proteinAngle` рассчитывается как произведение 360 (градусов в круге) на 15% (заданный процент белков).

6. Наконец, рисуем круговую диаграмму. Устанавливаем цвет каждой секции с помощью функции `SetColor`, затем рисуем секции круговой диаграммы с помощью `PieSlice`. Здесь мы рисуем секции по одной: сначала секцию для белков, затем для жиров, и в конце для углеводов.

7. После того, как круговая диаграмма будет нарисована, программа будет ожидать нажатия клавиши для закрытия графического окна. После нажатия клавиши графический режим будет закрыт с помощью `CloseGraph`.

Это программа на языке Паскаль, которая строит круговую диаграмму для демонстрации соотношения здорового питания, состоящего из 15% белков, 20% жиров и 65% углеводов.

Очень важно помнить, что для запуска данной программы вам потребуется Embarcadero Pascal.
Знаешь ответ?
Задать вопрос
Привет!
hello