РЕБЯТКИ, ЭТО ОЧЕНЬ СРОЧНО!!! ** вход программы подаются произвольные алфавитно-цифровые...

0 голосов
169 просмотров

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

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


Информатика (26 баллов) | 169 просмотров
Дан 1 ответ
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;<br>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

(194k баллов)
0

Спасибо огромное!!!))

0

Пожалуйста.

0

А её возможно решить без "char"?

0

Можно, но это будет длиннее.

0

Я знаю, что длиннее, просто дело в том, что мне не знаком char. Не могу сообразить как сделать через string

0

char - это один символ, а string - это несколько символов, только и всего. char изучается раньше, чем string обычно.

0

Где-то да, а вот у нас нет. Через char такое лёгкое и быстрое решение, странно, что мы делаем не так.

0

И как же вы делаете?

0

Говорю же через string, мы char вообще никогда не использовали.