Skip to content

Instantly share code, notes, and snippets.

@ernado
Created February 10, 2012 13:35
Show Gist options
  • Save ernado/1789666 to your computer and use it in GitHub Desktop.
Save ernado/1789666 to your computer and use it in GitHub Desktop.
uses
crt;
var
index,
phone, {двузначный номер подразделения}
people,{количество сотрудников, чьи номера введены}
count: byte; {количество подразделений}
s: string; {строка для ввода}
phones: set of byte; {множество уникальных номеров подразделений}
begin
ClrScr;
{инициализируем переменные}
count := 0; phones := [];
{считаем количество человек}
Write('Количество человек: '); Readln(people);
{ровно столько раз мы будем считывать строчку с данными}
{начнем обрабатывает ввод}
for index := 1 to people do
begin
{cчитаем строку}
Readln(s);
{удалим все, кроме последних двух символов - номер отделения
допустим, ввели:
Вася Пупкин В.П.П. 123-45-67
тогда в <s> будет хранится 67}
Delete(s, 1, length(s) - 2);
{переведем в byte полученный номер}
{третий аргумент не обязателен, если точно известно, что в s - номер}
{он лишь будет индикатором кода ошибки. как IOResult}
Val(s, phone);
{если номера <phone> нет в множестве номеров <phones>}
if not (phone in phones) then
begin
{добавим во множество новый номер}
phones := phones + [phone];
{увеличим количество номеров (и это будет являться количеством отделений}
Inc(count);
end;
end;
{выведем среднее количество человек на отделение}
Writeln('В среднем: ', (people/count): 2: 1);
Readkey;
end.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment