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

Найти слово в заданном предложении

28.05.2015, 02:32. Показов 1358. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Ввести предложение и найти в нем слово, в котором количество гласных букв А, Е, И, О будет наибольшим.
Понимаю, что сначала нужно разбить предложение на слова, не учитывая при этом знаки пунктуации, и записать их в отдельный массив. Далее, используя массив слов, найти в нем слово с наибольшим количеством гласных. Алгоритм понятен, не знаю как сделать (правильно написать) текст программы.
Заранее благодарен за любую помощь.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.05.2015, 02:32
Ответы с готовыми решениями:

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

В заданном предложении найти слово, которое является обращением другого слова
задание:в заданном предложении найти слово,которое является обращением другого...

В заданном предложении найти самое короткое и самое длинное слово
Делаю все строго по гайду, но после ввода строки вылетает "exit code = 201". Пишу в free pascal'е....

В заданном предложении удалить самое короткое слово
В заданном предложении удалить самое короткое слово. Считать, что слова в тексте отделены друг от...

1
Эксперт Pascal/Delphi
2386 / 1298 / 1492
Регистрация: 29.08.2014
Сообщений: 4,661
28.05.2015, 05:53 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
type astr=array[0..128] of string;
procedure split(delimeter:string;s:string;var sr:astr;var l:integer);
var
  i:integer;
  t:string;
procedure additem;
begin
  if t<>'' then begin
    inc(l);
    sr[l-1]:=t;
    t:='';
  end;
end;
begin
  l:=0;t:='';
  for i:=1 to length(s) do
  if pos(s[i],delimeter)=0 then t:=t+s[i] else additem;
  additem;
end;
function CountGl(s:string):integer;
var
  i,j:integer;
begin
  j:=0;
  for i:=1 to length(s) do if s[i] in ['А','Е','И','О'] then j:=j+1;
  CountGl:=j;
end;
var
  i,j,n:integer;
  s:string;
  b:astr;
begin
  write('CTPOKA:');
  readln(s);
  split('!?-.,:; ',s,b,n);
  j:=CountGl(b[0]);
  for i:=1 to n-1 do if j<CountGl(b[i]) then j:=CountGl(b[i]);
  if j=0 then writeln('Нет слов, содержащих буквы "А","Е","И","О"') else begin
    writeln('Слова с наибольшим содержанием букв "А","Е","И","О"');
    for i:=0 to n-1 do if CountGl(b[i])=j then writeln(b[i]);
  end;
end.
1
28.05.2015, 05:53
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.05.2015, 05:53
Помогаю со студенческими работами здесь

В заданном предложении указать слово, в котором доля гласных максимальна
В заданном предложении указать слово, в котором доля гласных максимальна. Считать, что слова в...

В заданном предложении указать слово в котором доля гласных (а, о, и, е) максимальна
В заданном предложении указать слово, в котором доля гласных (а, о, и, е) максимальна. P.s. На...

В заданном предложении указать слово, в котором доля гласных (А, Е, У, И) минимальна
В файле f1 набран текст. 1)Задан некоторый набор символов. Выяснить, можно ли из данного набора,...

Действительно ли в заданном предложении всякое несимметричное слово имеет четную длину
Проверить действительно ли в заданном предложении всякое несимметричное слово имеет четную длину!...


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

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

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