Форум программистов, компьютерный форум, киберфорум
Наши страницы
Pascal ABC
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
RossWales
4 / 4 / 4
Регистрация: 12.05.2015
Сообщений: 40
1

Определить, какие из слов строки повторяются чаще всего

12.05.2015, 22:23. Просмотров 681. Ответов 1
Метки нет (Все метки)

Написал программу в Free , но теперь её нужно переписать в АВС , но тут она выдаёт ошибку... помогите исправить и заставить работать в АВС.

Задание такое( в строке записаны слова через один пробел, определить какие из этих слов повторяются чаще всего и вывести эти слова на экран)

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
const 
N=100;
 
var
words:array[1..N]of string;
w:array[1..N]of string;
cn,k:integer;
s:string;
wd:string;
i,j:integer;
index:integer;
count:integer;
cnt:integer;
max:integer;
wc:integer;
b:boolean;
 
function ParceText(txt:string):integer;
var l,c:integer;
begin
c:=0;
l:=length(txt);
for var i:=1 to l+1 do
begin
if ((txt[i]<>' ')and(i<>l+1)) then
wd:=wd+txt[i] 
else
begin
inc(c);
words[c]:=wd;
wd:='';
end;
end;
ParceText:=c;
end;
 
begin
writeln('Введите текст:');
readln(s);
count:=ParceText(s);
for i:=1 to count do
begin
cnt:=0;
for j:=1 to count do
if words[j]=words[i] then inc(cnt);
if cnt>max then
begin
max:=cnt;
index:=i;
end;
end;
 
writeln;
writeln('Чаще всего встречаются слова:');
 
for i:=1 to count do
begin
wc:=0;
for j:=1 to count do
if words[i]=words[j] then
inc(wc);
if wc=max then
begin
b:=true;
for k:=1 to cn do
if w[k]=words[i] then
b:=false;
if b then 
begin 
writeln(words[i]);
inc(cn);
w[cn]:=words[i];
end;
end;
end;
 
readln;
end.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.05.2015, 22:23
Ответы с готовыми решениями:

C клавиатуры вводится последовательность слов. Вывести на экран тот символ, которые чаще всего встречается в тексте
C клавиатуры вводится последовательность слов. Вывести на экран тот символ, которые чаще всего...

Определить чаще всего встречающуюся компоненту файла
Составьте программу, оределяющую чаще всего встречающуюся компоненту файла f. Помогите пожалуйста(...

Определить какой символ встречается в тексте чаще всего
//определить какой символ встречается в тексте чаще всего var s,s1:string;i,k,j:integer; b:char;...

Определить, какие из слов в тексте повторяются чаще всего
Здравствуйте, подскажите, как можно определить, какие слова в тексте повторяются чаще всего,...

Определить, какие числа чаще повторяются в массиве: отрицательные или положительные
дана программа...массив в диапозоне от -10 до +10...кол-во чисел - 20.. вывести на экран что больше...

1
Joy
Эксперт Pascal/Delphi
2192 / 1215 / 1443
Регистрация: 29.08.2014
Сообщений: 4,435
13.05.2015, 07:12 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
var
  i,j,k,m:integer;
  s,t:string;
  a:array[1..128] of string;{массив уникальных слов}
  n:array[1..128] of integer;{количество повторов каждого слова}
procedure additem;{довавляем слово или увеличиваем счетчик повторов}
var
  k:integer;
begin
  if t<>'' then
  for k:=1 to j do if a[k]=t then begin{слово есть в списке - увеличиваем счетчик}
    n[k]:=n[k]+1;
    if n[m]<n[k] then m:=k;{заодно запоминаем индекс с максимальным числом повторов}
    t:='';
    break;
  end;
  if t<>'' then begin{слова в списке нет, добавляем}
   j:=j+1;
   n[j]:=1;
   a[j]:=t;
   t:=''
  end;
end;
begin
  i:=0;j:=0;m:=1; t:='';
  write('CTPOKA:'); readln(s);
  for i:=1 to length(s) do if s[i]<>' ' then t:=t+s[i] else additem;{разбираем на слова}
  additem;{не забывем про последнее слово}
  for i:=1 to j do begin
    if n[i]=n[m] then writeln(a[i]);{печатаем все слова равные количеству максимальных повторов}
  end;
end.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.05.2015, 07:12

Определить какие из гласных букв встречаются в тексте чаще всего
Нужна помощь в написании программы. Есть файл с текстом,нужно Определить какие из символов &quot;а&quot;,...

Определить какие значения одномерного массива повторяются и сколько раз они повторяются
Само задание: Подсчитать какие значения элементов задаваемого пользователем одномерного массива...

Определить, какие буквы слов совпадают чаще: первые, последние или средние (Pascal -> C++)
Задача: Дан текст, состоящий из слов, разделенных пробелом. Определить, какие буквы совпадают...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru