5.какие дополнительные вкладки появляются в электронной таблице при выделении диаграмма?
6. как построить диаграмму чтобы она могла максимально визуализировать данные?
7. как удалить диаграмму? 8.объясните какие виды графиков изображенных на рисунке 342 почему изображены два графика в одной координатной плоскости какой график наиболее информативным?
PascalABC.NET 3.5.1
program D_contest;
type
TStat = record
nick: string;
wins, battles: integer;
proc: real;
end;
var
N, i, num: integer;
str: array of string;
stat: array of TStat;
nick: string;
function found(ni_ck: string): integer;
begin
found := -1;
for var e := 0 to Length(stat) - 1 do
begin
if stat[e].nick = ni_ck then
begin
found := e;
break;
end;
end;
end;
var
v_pts, e_pts, l_e: integer;
F: textfile;
k: real;
s: string;
begin
Assign(F, 'input.txt');
Reset(F);
readln(F, n);
SetLength(str, n);
SetLength(stat, 1);
for i := 0 to n - 1 do
begin
readln(F, str[i]);
//get enemy_nick
nick := Copy(str[i], 1, Pos(' ', str[i]) - 1);
Delete(str[i], 1, Pos(' ', str[i]));
if (stat[0].nick <> '') then
begin
num := found(nick);
if (num = -1) then //not found
begin
l_e := Length(stat);
SetLength(stat, l_e + 1);
num := l_e;
stat[num].nick := nick;
end;
end
else
begin
stat[0].nick := nick;
end;
stat[num].battles += 1;
//get Vania_points
v_pts := StrToInt(Copy(str[i], 1, Pos(' ', str[i])));
Delete(str[i], 1, Pos(' ', str[i]));
//get enemy_points
e_pts := StrToInt(str[i]);
if v_pts > e_pts Then
stat[num].wins += 1;
end;
Close(F);
//вычисляю процент побед
for i := 0 to Length(stat) - 1 do
begin
stat[i].proc := stat[i].wins / stat[i].battles;
end;
//сортировка по процентам
for i := 0 to Length(stat) - 2 do
begin
for var j := 0 to Length(stat) - i - 2 do
begin
if stat[j].proc > stat[j + 1].proc then
begin
k := stat[j].proc;
stat[j].proc := stat[j + 1].proc;
stat[j + 1].proc := k;
s := stat[j].nick;
stat[j].nick := stat[j + 1].nick;
stat[j + 1].nick := s;
end;
end;
end;
//сортировка по алфавиту
for i := 0 to Length(stat) - 2 do
begin
for var j := 0 to Length(stat) - i - 2 do
begin
if (stat[j].proc = stat[j + 1].proc) and (stat[j].nick > stat[j + 1].nick) then
begin
k := stat[j].proc;
stat[j].proc := stat[j + 1].proc;
stat[j + 1].proc := k;
s := stat[j].nick;
stat[j].nick := stat[j + 1].nick;
stat[j + 1].nick := s;
end;
end;
end;
writeln(Length(stat));
for i := 0 to Length(stat) - 1 do
begin
write(stat[i].nick, ' ');
writeln(stat[i].proc * 100:0:6);
end;
end.
Объяснение:
Смотри код
использовать Чертежник
алг
нач
сместиться в точку (1,12)
опустить перо
сместиться в точку (3,12)
сместиться в точку (4,13)
сместиться в точку (5,13)
сместиться в точку (6,14)
сместиться в точку (6,13)
сместиться в точку (9,10)
сместиться в точку (18,10)
сместиться в точку (20,8)
сместиться в точку (20,5)
сместиться в точку (19,4)
сместиться в точку (19,7)
сместиться в точку (17,1)
сместиться в точку (15,1)
сместиться в точку (16,2)
сместиться в точку (16,3)
сместиться в точку (15,5)
сместиться в точку (15,6)
сместиться в точку (13,5)
сместиться в точку (10,6)
сместиться в точку (7,5)
сместиться в точку (7,1)
сместиться в точку (5,1)
сместиться в точку (6,2)
сместиться в точку (6,6)
сместиться в точку (4,10)
сместиться в точку (1,11)
сместиться в точку (1,12)
поднять перо
|глазик
сместиться в точку (3.95,11.95)
опустить перо
сместиться в точку (3.95,12.05)
сместиться в точку (4.05,12.05)
сместиться в точку (4.05,11.95)
сместиться в точку (3.95,11.95)
поднять перо
сместиться в точку (0,0)
кон