Электрандык почтаны калай жиберуге болады
-
- -
- -
-
-
-
-
-
-
Н
-
- -
-
-
- -
- -
-
г- - - - - - - - - - - - Т- - - - - -
-
-
-
-
micrу е Сала 2.
-
) Akmrolo к поли тало қалам
-
-
-
-
-
-
- - -
-
-
1 - - -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Электродык почтаны калай жиберуге болады
В системе определения типов данных функция стоит особняком, все-таки она является алгоритмической компонентой. То, что функция рассматривается как тип данных, возможно потому, что она имеет результат – т.е. данные. Формально функция – это переменная производного типа данных по отношению к результату, который она дает. Иначе говоря, функция – это то, что можно вызвать, применив к ее имени операцию ( ) справа. Еще одна возможность использовать функцию как переменную – получить указатель на нее.
Базовый тип char используется для создания производного типа - массива из 20 символов.
var s,s1:string;
i,j,count:integer;
begin
read(s);
for i:=length(s) downto 2 do
for j:=2 to i do
if s[j]<s[j-1] then begin
swap(s[j],s[j-1]);
s1:=s;
end;
//сортируем строку в алфавитном порядке чтобы потом было легче
//считать количество встреч одного и того же символа
count:=1;
write(s1[1],': ');
//первый символ в любом случае встречается один раз
for i:=2 to length(s1) do
if s1[i]=s1[i-1] then inc(count) else begin
writeln(count);
write(s1[i],': ');
count:=1
end;
//считаем количество совпадений для каждого символа
writeln(count);
end.