0 / 0 / 3
Регистрация: 02.11.2016
Сообщений: 20
1

Получить 10 наиболее часто встречающихся букв и число их появления

29.05.2017, 10:58. Показов 1167. Ответов 2

Студворк — интернет-сервис помощи студентам
Дан символьный файл f, содержащий произвольный текст. Получить 10 наиболее часто встречающихся букв и число их появления.

Собстна, основная работа сделана, проблемы с сортировкой. Надо чтобы выводило только 10 наиболее часто встречающиеся символы, а не разбирал весь текст, как у меня. Примерно представляю как это будет, но реализовать пока не могу.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
Program lab5;
const
n=100;
var
f:text;
x,i,k,j: integer;
ch:char;
m:array [1..n] of char;
begin
 
assign(f, 'E:\Pascal\lab5\1.txt');
reset(f);
 
i:=1;
 
 
while not (EOF(f)) and (i<=n)  do
  begin
 
  read(f, m[i]);
  inc(i);
  end;
 
 
 for i:=1 to n do
 begin
 write(m[i]);
 end;
writeln;
 
 
for j:=1 to n do
 begin
  x:=0;
  ch:=m[j];
 
  for i:=1 to n do
  if m[i]=ch then inc(x);
  writeln('Элемент ',ch,' встречается ',x,' раз');
 
    end;
 
    
close(f);
 
end.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
29.05.2017, 10:58
Ответы с готовыми решениями:

Дан символьный файл f, содержащий произвольный текст. Получить 10 наиболее часто встречающихся букв и число их появления
помогите, пожалуйста :'(

Получить 100 наиболее часто встречающихся слов файла и частоту их появления
Даны символьный файл f, содержащий произвольный текст длиной более 5000 слов. Слова в тексте...

Получить 100 наиболее часто встречающихся слов и число их появлений
Дан символьный файл f, содержащий произвольный текст длиной более 5000 слов. Слова в тексте...

Получить 10 наиболее часто встречающихся букв и число их появления
Дан символьный файл f, содержащий произвольный текст. Получить 10 наиболее часто встречающихся букв...

2
0 / 0 / 3
Регистрация: 02.11.2016
Сообщений: 20
02.06.2017, 11:26  [ТС] 2
Исправил некоторые ошибки в коде
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
Program lab5;
const
n=500;
var
f:text;
max,z,a,x,i,k,j: integer;
ch,ch1,ch2:char;
m:string;
//m1:array [a] of char;
//z:array [1..500] of integer;
begin
 
assign(f, 'F:\Pascal\lab5\1.txt');
reset(f);
 
 
 
 
while not (EOF(f)) and (i<=n)  do
  begin
  
  read(f, m);
 
  inc(i);
  end;
 
If Length(m) >= max then max:=Length(m);
 
 
write(m);
 
writeln;
 
 
for j:=1 to max do
 begin
  x:=0;
  ch:=m[j];
 
  for i:=1 to max do
 
 
  if m[i]=ch then inc(x);
  
  writeln('Элемент ',ch,' встречается ',x,' раз');
  
  
  
    end;
    
writeln('Всего букв ', max);
 
close(f);
 
end.
0
0 / 0 / 3
Регистрация: 02.11.2016
Сообщений: 20
15.06.2017, 21:35  [ТС] 3
Рабочая программа, соответствует заданным условиям
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
Program lab5;
const
n=1000;
 
var
f:text;             //сам текст
f1:text;            //текст с символами
 
x,i,k,j: integer;
a:integer;          //максимальное количество повторений
max,max1:integer;   //длина строки(текста и текста с символами)
ch:char;            
m,m1:string;        
 
 
begin
 
assign(f, 'E:\Pascal\lab5\1.txt');
assign(f1, 'E:\Pascal\lab5\2.txt');
 
reset(f);
reset(f1);
 
 
while not (EOF(f)) and (i<=n)  do
  begin
  read(f,m);
  inc(i);
  end;
  
  while not (EOF(f1)) and (i<=n)  do
  begin
  read(f1,m1);
  inc(i);
  end;
 
If Length(m) >= max then max:=Length(m);
If Length(m1) >= max1 then max1:=Length(m1);
 
write(m);
writeln;
 
 
 
 repeat
for j:=1 to max1 do
 begin
   x:=0;
   ch:=m1[j];
    for i:=1 to max do
     if m[i]=ch then inc(x);    //Поиск наибольшего числа повторений (переменная a)
     if a<x then a:=x;
    end;
 
 
 
 
 
     for j:=1 to max1 do
 begin
   
   x:=0;
   ch:=m1[j];
   
    for i:=1 to max do
    begin
     if m[i]=ch then inc(x);
     
     end;
     
 
     if (x=a) and (x<>0) then
    begin  
    writeln('Элемент ',ch,' встречается ',x,' раз');
    m1[j]:='&';
    a:=0; 
    inc(k);
    end;
     
  
 
    end;
  until k=10;   
 
 
  
writeln('Всего символов ', max);
 
 
 
close(f);
close(f1);
 
end.
0
15.06.2017, 21:35
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.06.2017, 21:35
Помогаю со студенческими работами здесь

Получить 10 наиболее часто встречающихся букв и число их появления из текстового файла
Дан символьный файл f, содержащий произвольный текст. Получить 10 наиболее часто встречающихся букв...

Дан символьный файл f, содержащий произвольный текст. Получить 10 наиболее часто встречающихся букв и число их появления
Дан символьный файл f, содержащий произвольный текст. Получить 10 наиболее часто встречающихся букв...

Получить 10 наиболее часто встречающихся букв в файле
Дан символьный файл f, содержащий произвольный текст. Получить 10 наиболее часто встречающихся букв...

Получить 5 наиболее часто встречающихся слов и число их появлений
Добрый вечер не могли бы помочь написать программу на Turbo Delphi в консольном режиме. Заранее...

Получить 10 наиболее часто встречающихся слов и число их появлений
Помогите с задачей пожалуйста Дан текстовый файл f, содержащий произвольный текст. Слова в тексте...

Найти частоту появления каждого из наиболее часто встречающихся элементов
Помогите решить задачу на Pascal: В целочисленном массиве K(n) много повторяющихся элементов....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru