Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 19.04.2010
Сообщений: 22
1

Определить количество слов, содержащих удвоенные гласные

21.04.2010, 19:44. Показов 897. Ответов 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
Program Task508;
Const  Vocal = 'аеиоуыэюя';
Var  k1,k2,Count : byte;
     Cond : boolean;
     S,S1 : string;
{ ------------------------------- }
Function DoubleVocal:boolean;
{ Проверка удвоения гласных в слове }
Var  i,p : byte;
Begin
  DoubleVocal:=false;
  For i:=1 to length(S1)-1 do
    Begin
      p:=Pos(S1[i],Vocal);
      If (p>0) and (S1[i]=S1[i+1]) then
        Begin
          DoubleVocal:=true; Exit
        End;
    End;
End { DoubleVocal };
{ ------------------------------- }
Begin
  Read(S); Writeln('S=',S);
  Count:=0; k2:=0; Cond:=true;
  While Cond do
    Begin
      k1:=NotSpace(k2+1);
      If k1=0 then
        Cond:=false
      Else
        Begin
          k2:=Space(k1+1);
          If k2=0 then
            Begin
              k2:=length(S)+1; Cond:=false
            End;
          S1:=Copy(S,k1,k2-k1);
          If DoubleVocal then
            Inc(Count);
        End;
    End;
  Writeln('Count=',Count);
End.

Помогите исправить
программа не работает
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.04.2010, 19:44
Ответы с готовыми решениями:

Имеем строку, состоящую из слов, разделенных пробелами. Определить количество слов, содержащих ровно три буквы
Имеем строку, состоящую из слов, разделенных пробелами. Определить количество слов, содержащих...

Определить количество слов, содержащих введенный символ.
1. Составить главную программу и функцию. В функции для двух век-торов А(N) и В(М), состоящих из...

Дана строка, которая состоит из слов, разделенных пропусками. Определить количество слов содержащих ровно три буквы "а"
Дана строка, которая состоит из слов, разделенных пропусками. Определить количество слов содержащих...

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

10
8 / 8 / 0
Регистрация: 19.04.2010
Сообщений: 58
21.04.2010, 19:55 2
Удвоение гласных это 2 гласные рядом (в слове) или 2 одинаковые подряд (так же в слове)?
0
0 / 0 / 0
Регистрация: 19.04.2010
Сообщений: 22
21.04.2010, 19:56  [ТС] 3
без разницы
0
8 / 8 / 0
Регистрация: 19.04.2010
Сообщений: 58
21.04.2010, 20:01 4
ну тогда надо проверять всю строку (текст):
- сначала по словам
--- потом посимвольно (в каждом слове), сравнивая каждый символ с определёнными гласными "а", "е", ...
0
0 / 0 / 0
Регистрация: 19.04.2010
Сообщений: 22
21.04.2010, 20:05  [ТС] 5
Если бы я знал как это сделать,я бы сюда не обращался бы
0
35 / 34 / 17
Регистрация: 28.04.2009
Сообщений: 67
21.04.2010, 20:20 6
я думаю так:
переменные: новое слово (логический), предыдущий символ (char), текущий символ
1.проходя по строке анализируем символ
2.1.если это глассная и предыдущий символ гласная и это новое слово, тогда количество слов в удвоеной +1, и новое слово в false
2.2.если это пробел тогда новое слово true
3.в конце каждого прохода цикла предыдущему символу присваивать текущий
пожалуй весь алгоритм
0
0 / 0 / 0
Регистрация: 19.04.2010
Сообщений: 22
21.04.2010, 20:26  [ТС] 7
А можешь это все в программе написать?
0
8 / 8 / 0
Регистрация: 19.04.2010
Сообщений: 58
21.04.2010, 20:44 8
У меня ещё одна идейка возникла, попробую написать и выложу
0
0 / 0 / 0
Регистрация: 19.04.2010
Сообщений: 22
21.04.2010, 21:22  [ТС] 9
давай жду
0
8 / 8 / 0
Регистрация: 19.04.2010
Сообщений: 58
21.04.2010, 22:21 10
Хотел забить пробелы, гласные и согласные в массив; в общем, задумка не очень полезная - с таким же успехом можно и без массива обойтись...
Попробую закончить...

Добавлено через 11 минут
Кому интересно, можете исправить, а то что-то не правильно
P.S. Подзабыл я Паскаль
0
35 / 34 / 17
Регистрация: 28.04.2009
Сообщений: 67
22.04.2010, 08:37 11
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
var count,i: integer;
    s: string;
    pc,cc: char;
    gl: set of char;
    neww: boolean;
begin
     gl:=['a','e','q','y','u','o','i','à','å','¸','è','î','ó','û','ý','þ','ÿ'];
     s:='ee a ai lol';
     pc:=chr(0);
     neww:=true;
     count:=0;
     for i:=1 to length(s) do
       begin
       cc:=s[i];
       if(pc in gl)and(cc in gl)and(neww)
         then begin
         inc(count);
         neww:=false;
         end;
       if cc=' '
         then neww:=true;
       pc:=cc;
       end;
     writeln('word with double vocal: ',count);
end.
0
22.04.2010, 08:37
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.04.2010, 08:37

В исходной строке а определить количество слов, содержащих ровно п символов строки x
В исходной строке а определить количество слов,содержащих ровно п символов строки x.

Определить в предложение количество слов содержащих подстроку Z
Определить в предложение количество слов содержащих подстроку Z.Вывеси все эти слова и исходную...

Определить в предложении количество слов содержащих подстроку Z
Определить в предложении количество слов содержащих подстроку Z (вводит пользователь). Вывести все...

Ввести строку. Определить количество слов, содержащих букву Z
10) Ввести строку. Определить количество слов, содержащих букву Z


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

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

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