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

Дана строка, содержащая текст, заканчивающийся точкой. Вывести на экран слова, содержащие три буквы.

09.11.2010, 14:01. Показов 3708. Ответов 1
Метки нет (Все метки)

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

Дана строка, содержащая текст, заканчивающийся точкой. Вывести на экран слова, содержащие три буквы
Дана строка, содержащая текст, заканчивающийся точкой. Вывести на экран слова, содержащие три буквы.

Дана строка, содержащая текст, заканчивающийся точкой. Вывести на экран слова, содержащие три буквы.
Обработка числовых массивов 1.Дан массив X(N). Переписать в массив Y подряд положительные и в...

Вывести на экран слова,содержащие три буквы
1.дана символьная строка ,содержащая текст,заканчивающийся точкой. Вывести на экран...

Вывести на экран слова, содержащие три буквы
всем привет, помогите решить: Дан текст. Вывести на экран слова, содержащие три буквы. ...

1
Почетный модератор
64303 / 47598 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
09.11.2010, 15:50 2
Лучший ответ Сообщение было отмечено FARAON166 как решение

Решение

Можно например так.

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
uses crt;
const rzd=[' ',',',';',':','!','?','.'];{разделители можно добавить, зависит от текста}
var  s,s1:string;
     k,i: integer;
     c:char;
begin
clrscr;
writeln('Введите текст, окончание ввода точка:');
s:='';
repeat
c:=readkey;
write(c);
s:=s+c;
if c='.' then writeln;
until c='.';
for i:=length(s) downto 1 do
  begin
    if s[i] in rzd then s[i]:='.';{заменим разделители на точку}
    while pos('..',s)>0 do   {если подряд 2 точки}
    delete(s,pos('..',s),1); {1 удаляем}
  end;
writeln('Слова из 3 букв:');
k:=0;
while pos('.',s)>0 do {пока есть точки}
 begin
  s1:=copy(s,1,pos('.',s)-1);{копируем первое слово в массив}
  if length(s1)=3 then
   begin
     write(s1,' ');{если 3 буквы-выводим}
     k:=1;
    end;
  delete(s,1,pos('.',s));{удаляем его}
 end;
if k=0 then write('Слов из 3 букв нет!');
readln
end.
1
09.11.2010, 15:50
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.11.2010, 15:50
Помогаю со студенческими работами здесь

Вывести на экран слова, содержащие три буквы
Дана строка, содержащая текст, заканчивающийся точкой. Вывести на экран слова, содержащие три буквы.

Вывести на экран слова, содержащие три буквы
Дана строка, содержащая текст, заканчивающийся точкой.Вывести на экран слова, содержащие три буквы.

Вывести на экран слова, содержащие три буквы
1. дана символьная строка ,содерщая текст, заканчиваюшияся точкой. Вывести на экран слова,...

Дана строка, содержащая англ. текст. Найти количество слов, начинающихся с буквы B
Дана строка, содержащая англ. текст. Найти количество слов, начинающихся с буквы B.


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

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

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