Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.84/25: Рейтинг темы: голосов - 25, средняя оценка - 4.84
1 / 1 / 0
Регистрация: 16.11.2011
Сообщений: 28
1

Из введенного предложения вывести на экран все слова, содержащие заданную букву

30.01.2016, 15:25. Показов 4565. Ответов 6
Метки нет (Все метки)

Всем добрый день. Нужна помощь. Нужно написать программу со следующим описание задачи: Из введенного предложения вывести на экран все слова, содержащие букву (буква задается с клавиатуры). Примечание: буква может находится в любой части слова и встречаться несколько раз. Помогите пожалуйста.
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.01.2016, 15:25
Ответы с готовыми решениями:

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

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

Вывести на экран все слова предложения, содержащие в качестве подстроки слово w
В строках вообще чёт понять не могу(( пожалуйста объясните хотя алгоритм как делать по подробнее!((...

Вывести на экран все слова из файла, которые начинаются на заданную букву
Создать текстовый файл, состоящий из слов (например в редакторе «Блокнот»). Необходимо: ...

6
268 / 96 / 75
Регистрация: 04.12.2015
Сообщений: 369
Записей в блоге: 1
30.01.2016, 22:03 2
Лучший ответ Сообщение было отмечено LuuuCky как решение

Решение

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
var strStr, strSim, strWord: string;
var i: integer;
var OK: integer;
 
begin
// Ввод данных и инициализация переменных
writeln('Введите строку');
readln(strStr);
writeln('Введите символ');
readln(strSim);
 
strWord := '';
strStr := strStr + ' ';
OK := 0;
 
// Поиск слов и указанного пользователем в них символа
for i:=1 to length(strStr) do
    if strStr[i] <> ' ' then
       begin     // Если очередной символ не пробел, то считается,ч то это продолжается слово
            if strStr[i] = strSim then OK := 1;      // Если символ повстречался, устанавливаем для себя флаг
            strWord:=strWord+strStr[i];              // Слово "дописывается"
       end
    else
       begin    // Если повстречался пробел, то считается, что слово закончилось
            if OK = 1 then writeln(strWord, ' ');    // Если взведён флаг, то слово выводится на консоль
            strWord := '';
            OK := 0;
       end;
end.
0
1 / 1 / 0
Регистрация: 16.11.2011
Сообщений: 28
30.01.2016, 22:10  [ТС] 3
YakobsEA, спасибо огромное за отзыв, код отлично срабатывает, но слова не выводятся почему-то...
0
268 / 96 / 75
Регистрация: 04.12.2015
Сообщений: 369
Записей в блоге: 1
31.01.2016, 06:05 4
У меня выводятся...
А как Вы поняли, что программа отлично срабатывает, если у Вас не выводится?

Можете проверить вот здесь (у меня даже здесь отработало на ура): http://ideone.com/
1. В выпадающем списке под полем программного кода выберите "Pascsl (fpc)" (в рамках реализации задачи синтаксис одинаковый)
2. Скопируйте программный код в поле программного кода вместо того, что там есть
3. Нажмите кнопку stdin и введите исходные данные (сайт корректно работает ТОЛЬКО С ЛАТИНСКИМИ символами), например: {"qwe asd zxc qazqs vtr", Enter, "q"}
4. Жмите кнопку Run.

P.S. Если вводили данные на русском, попробуйте латинские символы, возможно у Вас есть проблемы с кодировками языков на уровне операционной системы.
1
1 / 1 / 0
Регистрация: 16.11.2011
Сообщений: 28
31.01.2016, 13:20  [ТС] 5
Да, на рекомендованном вами сайте все выполнилось с использованием латиницы. Но почему например при выполнении этого же кода на Free pascal появляется консоль с сообщением ввести предложение/слово, а после ввода окно консоли просто закрывается без вывода слов ?
0
Модератор
Эксперт по электронике
7697 / 3852 / 1493
Регистрация: 01.02.2015
Сообщений: 11,899
Записей в блоге: 2
31.01.2016, 13:22 6
Перед последним end добавьте строки:
Pascal
1
2
  writeln('Press ENTER to exit...');
  readln;
1
1 / 1 / 0
Регистрация: 16.11.2011
Сообщений: 28
31.01.2016, 13:27  [ТС] 7
Спасибо большое все работает )) Срабатывает все и с латиницей и с русскими символами ))
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
31.01.2016, 13:27

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

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

Создать файл, состоящий из слов. Вывести на экран все слова, которые начинаются на заданную букву
Добрый день. Это мой первый вопрос на форуме. Прошу помочь с задачкой: &quot;Создать файл, состоящий...

Вывести на экран все слова, содержащие букву "k"
дана строка. вывести на экран все слова, содержащие букву k. заранее большое спасибо.


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

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

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