Форум программистов, компьютерный форум, киберфорум
Наши страницы
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
Илюха12345
0 / 0 / 0
Регистрация: 01.06.2012
Сообщений: 45
1

Во введенном предложении вывести на печать все слова содержащие более чем 1 букву а

09.08.2012, 12:12. Просмотров 965. Ответов 8
Метки нет (Все метки)

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

Добавлено через 15 минут
Помогите плиз
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.08.2012, 12:12
Ответы с готовыми решениями:

Вывести на печать в алфавитном порядке: согласные, которые не входят в более, чем в два нечетных слова
Вводится непустая строка из строчных букв(не более 79 символов). Отдельные...

В предложении найти и вывести все слова из четырех символов
Написать программу. По возможности алгоритм. В предложении найти и вывести все...

Вывести все слова, которые содержат хотя бы одну букву е
Вывести все слова, которые содержат хотя бы одну букву е

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

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

8
mamedovvms
2919 / 840 / 324
Регистрация: 30.04.2009
Сообщений: 2,633
09.08.2012, 12:27 2
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
ss:='';
k:=0;
for i:=1 to length(s) to
begin
 if s[i] in ['a'..'z'] then
 begin
  ss:=ss+s[i];
  if s[i]='a' then k:=k+1;
 end:
 if not(s[i] in ['a'..'z'])or(i=length(s))then
 begin
  if k>1 then writeln(ss);
    ss:=ss;
    k:=0;
 end;
end;
1
Илюха12345
0 / 0 / 0
Регистрация: 01.06.2012
Сообщений: 45
09.08.2012, 12:43  [ТС] 3
а как программа выглядит полностью?
0
mamedovvms
2919 / 840 / 324
Регистрация: 30.04.2009
Сообщений: 2,633
09.08.2012, 12:46 4
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
uses crt;
var s,ss:string;
     i,k:integer;
begin
 clrscr;
 writeln('Stroka ');
 readln(s);
ss:='';
k:=0;
for i:=1 to length(s) to
begin
 if s[i] in ['a'..'z'] then
 begin
  ss:=ss+s[i];
  if s[i]='a' then k:=k+1;
 end:
 if not(s[i] in ['a'..'z'])or(i=length(s))then
 begin
  if k>1 then writeln(ss);
    ss:=ss;
    k:=0;
 end;
end;
readln;
end.
1
Илюха12345
0 / 0 / 0
Регистрация: 01.06.2012
Сообщений: 45
10.08.2012, 10:11  [ТС] 5
а почему программма не выводит на экран слова содержащие 2 буквы а в слове

Добавлено через 36 секунд
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
uses crt;
var s,ss:string;
     i,k:integer;
begin
 clrscr;
 writeln('Stroka ');
 readln(s);
ss:='';
k:=0;
for i:=1 to length(s) do
begin
 if s[i] in ['a'..'z'] then
 begin
  ss:=ss+s[i];
  if s[i]='a' then k:=k+1;
 end;
 if not(s[i] in ['a'..'z'])or(i=length(s))then
 begin
  if k>1 then writeln(ss);
    ss:=ss;
    k:=0;
 end;
end;
readln;
end.
0
Puporev
Модератор
55060 / 42327 / 29230
Регистрация: 18.05.2008
Сообщений: 100,025
10.08.2012, 10:27 6
Вообще-то выводит, но неверно, исправьте
Pascal
1
2
3
4
begin
  if k>1 then writeln(ss);
    ss:='';//здесь
    k:=0;
2
Илюха12345
0 / 0 / 0
Регистрация: 01.06.2012
Сообщений: 45
10.08.2012, 12:11  [ТС] 7
Спасибо

Добавлено через 1 час 25 минут
а не могли бы вы поподробней каждую строчку расписать что мы выполнили , а то некоторые условия я не понимая зачем и для чего они
0
mamedovvms
2919 / 840 / 324
Регистрация: 30.04.2009
Сообщений: 2,633
10.08.2012, 12:16 8
так ты напиши что не понятно

Добавлено через 3 минуты
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
for i:=1 to length(s) do  берем каждый символ строки
begin
 if s[i] in ['a'..'z'] then если это буква
 begin
  ss:=ss+s[i]; тогда прибавляем к новой строке
  if s[i]='a' then k:=k+1; если эта буква равна а тогда увеличиваем количество на 1
 end;
 if not(s[i] in ['a'..'z'])or(i=length(s))then если символ не буква 
 begin
  if k>1 then writeln(ss); если в прочитанном слове букв а больше 1 тогда выодим прочитанное слово
    ss:=''; очищаем слово, так как дальше пойдет следующее
    k:=0; счетчик тоже обнуляем
 end;
end;
1
Илюха12345
0 / 0 / 0
Регистрация: 01.06.2012
Сообщений: 45
10.08.2012, 12:23  [ТС] 9
все понял спасибо
0
10.08.2012, 12:23
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.08.2012, 12:23

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

Напечатать все слова, отличные от последнего слова, предварительно удалив из каждого слова последнюю букву
1) Программа. Дан текстиз строчных русских букв, закоторым следует точка....

Напечатать все слова, перенеся первую букву каждого слова в конец слова
приветствую вас))) помогите пожалуйста даме... Текст задан строкой var St:...


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

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

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