const Cyr=['А'..'я','Ё','ё']; Lat=['A'..'z']; Dig=['0'..'9'];var s,sC,sL,sD,sO:string; i:integer;begin Writeln('Введите произвольную строку символов'); Readln(s); sC:=''; sL:=''; sD:=''; sO:=''; for i:=1 to Length(s) do if s[i] in Cyr then sC:=sC+s[i] else if s[i] in Lat then sL:=sL+s[i] else if s[i] in Dig then sD:=sD+s[i] else sO:=sO+s[i]; Writeln('Кириллица: ',sC); Writeln('Латиница : ',sL); Writeln('Цифры : ',sD); Writeln('Прочее : ',sO)end.
Тестовое решение:Введите произвольную строку символовЗапишем следующее выражение: y=5*Sin(x)/(3.5*x+Sqr(x); (язык Pascal)Кириллица: ЗапишемследующеевыражениеязыкЛатиница : ySinxxSqrxPascalЦифры : 535Прочее : : =*()/(.*+(); ( )
Примечание: поскольку в задании не сказано, что требуется записать все использованные символы только по одному разу, они повторяются.