ALEXGEEK
30.01.2021 07:29

очень надо
[не пишите не знаю, мне тоже надо] ​


очень надо [не пишите не знаю, мне тоже надо] ​

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
JadenGirl
28.04.2020 23:07

var

 n, Num, i, j, t: integer;  

 Count: array[1..12] of integer;  

 Names: array[1..12] of integer;

begin

 for i := 1 to 12 do  

 begin

   Count[i] := 0;  

   Names[i] := i;  

 end;  

 ReadLn(N); { Считываем количество запросов}  

 for i := 1 to N do  

 begin

   ReadLn(t); {считали очередной запрос}  

   Count[t] := Count[t] + 1;  

 end;  

 {Сортируем массивы Names и Count в порядке убывания значений массива Count}  

 for i := 12 downto 2 do  

   for j := 2 to i do  

     if Count[j - 1] < Count[j] then  

     begin

       t := Count[j];

       Count[j] := Count[j - 1];

       Count[j - 1] := t;

       t := Names[j];

       Names[j] := Names[j - 1];

       Names[j - 1] := t;

     end;  

 for i := 12 downto 1 do  

   if Count[i] > 0 then  

     WriteLn(Names[i], ' ', Count[i]);  

end.

Объяснение:

0,0(0 оценок)
Ответ:
luhxor
06.08.2020 15:27

Объяснение:

uses GraphABC;

const

 Path = 'C:\Ilya\AlgoРитмы\Sankt-Peterburg.txt';

 DisplacementX = 10;

 DisplacementY = -10;

begin

 SetWindowIsFixedSize(true);

 

 var H := Window.Height;

 

 var A := ReadAllText(Path).Replace(',', '.').ToReals();

 var StepX := Window.Width / (A.Count - 1);

 var Min := Abs(A.Min);

 var Max := A.Max() + Min;

 var B := A.Select((x, i) -> (x, Round(StepX * i), Round(H - (A[i] + Min) / Max * H))).ToList();

 

 for var i := 0 to B.Count - 2 do

 begin

   var c := Round(255 - (B[i].Item3 + B[i].Item3) * 0.5 / H * 255);

   SetPenColor(RGB(0, c, c));

   SetBrushColor(RGB(0, c, c));

   Polygon(Arr(new Point(B[i].Item2, H), new Point(B[i].Item2, B[i].Item3),

               new Point(B[i + 1].Item2, B[i + 1].Item3), new Point(B[i + 1].Item2, H)));

 end;

 SetFontColor(clBlack);

 SetBrushColor(ARGB(200, 255, 255, 255));

 for var i := 0 to B.Count - 1 do

   TextOut(B[i].Item2 + DisplacementX, B[i].Item3 + DisplacementY, FloatToStr(B[i].Item1));

end.

Круговая диаграмма

Комментарии к коду  [показать]

uses GraphABC;

const

 N = 5;

 R = 150;

 K = 0.7;

var

 A: array of integer;

 Angle: real;

begin

 SetWindowIsFixedSize(true);

 SetWindowSize(500, 500);

 var W := Window.Width div 2;

 var H := Window.Height div 2;

 

 SetLength(A, N);

 for var i := 0 to N - 1 do

   Readln(A[i]);

 

 var Sum := A.Sum();

 

 SetPenWidth(2);

 var R2 := R * K;

 for var i := 0 to N - 1 do

 begin

   var ang := Round(A[i] / Sum * 360);

   SetBrushColor(clRandom());

   Pie(W, H, R, Round(Angle), Round(Angle - ang));

   var ang2 := DegToRad(360 - Angle + ang / 2);

   SetBrushColor(clWhite);

   TextOut(Round(W + R2 * Cos(ang2)), Round(H + R2 * Sin(ang2)), Format('{0} [~{1}%]', A[i], Round(A[i] / Sum * 100)));

   Angle -= ang;

 end;

0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота