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

Выяснить, сколько в тексте слов перевертышей

20.03.2014, 12:24. Показов 1562. Ответов 7
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Выяснить, сколько в тексте слов перевертышей. Данная задача по теме: строки.

Добавлено через 17 часов 36 минут
Не знаю как написать процедуру, что бы он находил эти слова в строке
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.03.2014, 12:24
Ответы с готовыми решениями:

Текстовые файлы. Выяснить, сколько в файле слов перевертышей
1. Дан текстовый файл f, заменить все вхождения заданного слога (сочетания 2-х символов) на...

Дана строка, содержащая текст. Сколько слов в тексте? Сколько букв в тексте?
Помогите, пожалуйста, решить задачу: Дана строка, содержащая текст. Сколько слов в тексте? Сколько...

Выяснить сколько слов в тексте есть идентификаторами языка С ++
Выяснить сколько слов в тексте есть идентификаторами языка С ++. Вывести список распознанных...

Выяснить, есть ли во введенном тексте слова, оканчивающиеся на «f», и сколько таких слов
всем привет. буду признателен, если поможете с задачей. Задача: Выяснить, есть ли во...

7
Модератор
9853 / 5223 / 3304
Регистрация: 17.08.2012
Сообщений: 15,975
20.03.2014, 14:55 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
function pal(p: string): integer;
var i: integer;
begin
  pal := 1;
  for i := 1 to length(p) div 2 do if p[i] <> p[length(p) - i + 1]
    then begin
      pal := 0;
      break
    end
end;
const br: set of char = [' ', ',', '.', '?', '!', '''', '"', ':', ';'];
var s: string;
    i, k: integer;
begin
  writeln('Enter string:');
  readln(s);
  s := s + ' ';
  k := 0;
  while length(s) > 0 do
    begin
      while (length(s) > 0) and (s[1] in br) do delete(s, 1, 1);
      for i := 1 to length(s) do if s[i] in br
        then begin
          k := k + pal(copy(s, 1, i - 1));
          delete(s, 1, i);
          break
        end
    end;
  writeln('Palindroms in string: ', k);
  readln
end.
0
0 / 0 / 0
Регистрация: 16.03.2014
Сообщений: 22
20.03.2014, 15:02  [ТС] 3
Что значит эта строка?
Код
const br: set of char = [' ', ',', '.', '?', '!', '''', '"', ':', ';'];
0
993 / 521 / 102
Регистрация: 19.03.2013
Сообщений: 3,114
Записей в блоге: 19
20.03.2014, 15:03 4
Параграф, Это объявление и инициализация сета (перечисления), которое потом используется в условии s[1] in br
1
0 / 0 / 0
Регистрация: 16.03.2014
Сообщений: 22
20.03.2014, 15:15  [ТС] 5
Спасибо
0
Модератор
9853 / 5223 / 3304
Регистрация: 17.08.2012
Сообщений: 15,975
20.03.2014, 15:33 6
В этом множестве (перечислении, сете) у меня символы-разделители слов. Можно добавить или убрать оттуда что-либо.
1
0 / 0 / 0
Регистрация: 16.03.2014
Сообщений: 22
24.03.2014, 15:39  [ТС] 7
Cyborg Drone,
Pascal
1
2
3
4
5
6
7
while length(s) > 0 do
    begin
      while (length(s) > 0) and (s[1] in br) do delete(s, 1, 1);
      for i := 1 to length(s) do if s[i] in br
        then begin
          k := k + pal(copy(s, 1, i - 1));
          delete(s, 1, i)
Можешь пожалуйста объяснить, как что тут просчитывается? не пойму
0
Модератор
9853 / 5223 / 3304
Регистрация: 17.08.2012
Сообщений: 15,975
24.03.2014, 16:18 8
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
//...
  while length(s) > 0 do //потрошим строку, пока в ней есть символы
    begin
      while (length(s) > 0) and (s[1] in br) do delete(s, 1, 1); //удаляем разделители в начале строки
      for i := 1 to length(s) do //цикл, вырезаем слово из строки
        if s[i] in br //если очередной символ строки в множестве разделителей,
          then begin //то
            k := k + pal(copy(s, 1, i - 1));
//прибавляем к счётчику палиндромов значение функции pal 
//с аргументом-строкой от начала строки s до разделителя
//Значение функции pal: если её аргумент - палиндром, то pal=1, иначе pal=0
            delete(s, 1, i); //удаляем слово из строки
            break //досрочно завершаем цикл, так как слово вырезали и определились с ним
          end
    end;
//...
0
24.03.2014, 16:18
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.03.2014, 16:18
Помогаю со студенческими работами здесь

Выяснить, есть ли во введённом тексте слова, оканчивающиеся на ‘f’, и сколько таких слов. (Слова разделяются пробелами.)
Выяснить, есть ли во введённом тексте слова, оканчивающиеся на ‘f’, и сколько таких слов. (Слова...

Выяснить, есть ли во введённом тексте слова, начинающиеся с буквы "А", и сколько таких слов
всем привет. Буду благодарна если поможете решить задачу нужно выяснить, есть ли во введённом...

Дан файл, содержащий текст. Сколько слов в тексте? сколько цифр в тексте?
Дан файл, содержащий текст. Сколько слов в тексте? сколько цифр в тексте?

Дан файл, содержащий текст. Сколько слов в тексте? Сколько цифр в тексте?
Дан файл, содержащий текст. Сколько слов в тексте? Сколько цифр в тексте?


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

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

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