Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > Помощь студентам


Ответ
 
Опции темы Опции просмотра
Старый 08.05.2014, 22:47   #61 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от pashasnuff Посмотреть сообщение
А почему при любом вводе он пишет не правильный ввод?)
Не могу знать. Вот так программа работает у меня:
Миниатюры
aa01.jpg  
Vladimir_S вне форума   Ответить с цитированием
Старый 08.05.2014, 23:00   #62 (permalink)
pashasnuff
Member
 
Регистрация: 16.04.2014
Сообщений: 51
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Подскажите пожалуйста какой блок убрать чтобы
железный,лизун
он обрабатывал, это ведь удовлетворяет условию
pashasnuff вне форума   Ответить с цитированием
Старый 08.05.2014, 23:16   #63 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от pashasnuff Посмотреть сообщение
Подскажите пожалуйста какой блок убрать чтобы
железный,лизун
он обрабатывал, это ведь удовлетворяет условию
Пожалуйста. Я-то понял так, что после запятых обязаны быть пробелы, но Вы правы - в условии это не жесткое требование. Тогда так:
Код:
Const
  Sonants:Set of Char=['б','в','г','д','ж','з','л','м','н','р'];
  Letters:Set of Char=['а'..'я']+[',']+[' '];

Var
 S:String;
 C:Char;
 i,k,N,L:integer;
 Found:Set of char;
 p,b1,b2,b3,b4:boolean;

begin    
 p:=false;
 while p=false do
  begin
   Writeln('Введите строку:');
   Readln(S);
   L:=Length(S);
   b1:=false;
   if L<2 then b1:=true;
   if not b1 then
    begin
     b2:=false;
     for i:=1 to L do
      if not (S[i] in Letters) then b2:=true;
    end;
   if not b1 and not b2 then
    begin
     b3:=true;
     for i:=1 to L-1 do
      if S[i]=',' then b3:=false;
    end;
   if not b1 and not b2 and not b3 then
    begin
     b4:=false;
     for i:=2 to L do
      if (S[i]=' ') and not (S[i-1]=',') then b4:=true;
    end;
   if b1 or b2 or b3 or b4 then
     Writeln('Некорректный ввод!')
   else p:=true;
  end;
 Writeln;
 Found:=[];
 N:=1;
 i:=1;
 while (i<L-1) do
  begin
   If (S[i] in Sonants) and not (S[i] in Found) then
    begin
     C:=S[i];
     k:=i;
     while (S[k]<>',') and (k<L) do k:=k+1;
     if S[k]=',' then
      while (S[k]<>C) and (k<L) do k:=k+1;
     if S[k]=C then
      begin
       Found:=Found+[C];
       N:=N+1;
      end;
    end;
   i:=i+1;
  end;

 If N=0 then
  Writeln('Таких букв нет!')
 else
  begin
   Writeln('Результат:');
   for C:='б' to 'р' do
    if C in Found then write(C+' ');
  end;
 Readln
End.
Vladimir_S вне форума   Ответить с цитированием
Старый 08.05.2014, 23:18   #64 (permalink)
pashasnuff
Member
 
Регистрация: 16.04.2014
Сообщений: 51
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Убрал блок b4, убрал все что связано с b4 но все равно ошибка ввода
pashasnuff вне форума   Ответить с цитированием
Старый 08.05.2014, 23:20   #65 (permalink)
pashasnuff
Member
 
Регистрация: 16.04.2014
Сообщений: 51
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Спасибо Владимир!!!
P.s Вы не думайте что я тупой потому что много спрашивал, я всего лишь хочу понимать)))
pashasnuff вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Старый 08.05.2014, 23:22   #66 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от pashasnuff Посмотреть сообщение
Убрал блок b4, убрал все что связано с b4 но все равно ошибка ввода
Не могу знать:
Миниатюры
aa01.jpg  
Vladimir_S вне форума   Ответить с цитированием
Старый 08.05.2014, 23:24   #67 (permalink)
pashasnuff
Member
 
Регистрация: 16.04.2014
Сообщений: 51
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
Smile

Владимир, все отлично работает!!!!!)
pashasnuff вне форума   Ответить с цитированием
Старый 08.05.2014, 23:24   #68 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от pashasnuff Посмотреть сообщение
P.s Вы не думайте что я тупой потому что много спрашивал, я всего лишь хочу понимать)))
Что, несомненно, заслуживает всяческого уважения, в отличие от обычного для лоботрясов "вы тут напишите, я скатаю и сдам".
Успехов!
Vladimir_S вне форума   Ответить с цитированием
Старый 08.05.2014, 23:30   #69 (permalink)
pashasnuff
Member
 
Регистрация: 16.04.2014
Сообщений: 51
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Еще маленькая просьба, можно ли сделать чтобы конструкции типа
город, дорога
тоже считывались?
pashasnuff вне форума   Ответить с цитированием
Старый 08.05.2014, 23:47   #70 (permalink)
pashasnuff
Member
 
Регистрация: 16.04.2014
Сообщений: 51
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Имеется ввиду чтобы после запятой может быть хоть сколько пробелов(по условию так)
pashasnuff вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ

Опции темы
Опции просмотра

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




Часовой пояс GMT +4, время: 06:34.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.