Предмет: Информатика, автор: killmepleaseee

РЕБЯТКИ, ЭТО ОЧЕНЬ СРОЧНО!!!

На вход программы подаются произвольные алфавитно-цифровые символы. Ввод этих символов заканчивается точкой. Требуется написать программу, которая будет печатать последовательность строчных английских букв ('a' 'b'... 'z') из входной последовательности и частот их повторения. Печать должна происходить в алфавитном порядке. Например, пусть на вход подаются следующие символы:
fhb5kbfыshfm.
В этом случае программа должна вывести
b2
f3
h2
kl
ml
s1

Ответы

Автор ответа: petyaGavrikov
0
var s:string;
a:array['a'..'z'] of integer;
i:integer; c:char;
begin
writeln('Введите строку:');
readln(s);
for c:='a' to 'z' do a[c]:=0;
for i:=1 to length(s) do
 if (s[i]>='a')and(s[i]<='z') then a[s[i]]:=a[s[i]]+1;
for c:='a' to 'z' do
 if a[c]>0 then writeln(c,' ',a[c]);
end.

Программа:
Введите строку:
fhb5kbfыshfm.
b 2
f 3
h 2
k 1
m 1
s 1
Автор ответа: killmepleaseee
0
Я знаю, что длиннее, просто дело в том, что мне не знаком char. Не могу сообразить как сделать через string
Автор ответа: petyaGavrikov
0
char - это один символ, а string - это несколько символов, только и всего. char изучается раньше, чем string обычно.
Автор ответа: killmepleaseee
0
Где-то да, а вот у нас нет. Через char такое лёгкое и быстрое решение, странно, что мы делаем не так.
Автор ответа: petyaGavrikov
0
И как же вы делаете?
Автор ответа: killmepleaseee
0
Говорю же через string, мы char вообще никогда не использовали.
Похожие вопросы
Предмет: Информатика, автор: zhenya210989