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
1
2
3
4
10
11
12
13
14
20
21
22
23
24
30
31
32
33
34
40
Если писать на QBasice то будет примерно так:
1. DIT a(i)
4. IF i = 0 THEN 11
6. IF i > 0 THEN 13
7. IF I < 0 THEN 15
10. END.
<span>11. PRINT i
</span>12. END.
<span>13. PRINT i
</span>14. END.
<span>15. PRINT i
</span>16. END
<span>Могу ошибаться) Точно не могу написать..</span>
Составил код в Visual Studio, в итоге получилось 27
Если байты нумеруются с 0 до 4fff_16, то всего байт 5000_16 = 5 * 16^3 = 5 * 2^12.
5 * 2^12 байт = 5 * 2^2 Кб = 20 Кб