IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Задача на обработку строк, верна ли блок-схема
Александр Сергеевич
сообщение 30.11.2012 0:58
Сообщение #1





Группа: Пользователи
Сообщений: 9
Пол: Мужской

Репутация: -  0  +


Такая задачка: дан текст, вывести слова, отличные от последнего слова и удовлетворяющие свойству:
слово совпадает с начальным отрезком латинского алфавита (a.ab.abc и тд). учесть, что в диапазоне
'a'..'z' могут быть литеры, отличные от латинских.
решение такое
Const st=('abcdefghijklmnopqrstuvwxyz');
Var s,s1,ps:string;
i,j:byte;
b:boolean;
Begin
write('введите строку': ');readln(s);
i:=Length(s);ps:='';
While s[i]<>' ' do
dec(i);
ps:=Copy(s,i+1,Length(s));
Delete(s,i,Length(s));
s:=s+' ';
While Pos(' ',s)<>0 do
Begin
s1:=Copy(s,1,Pos(' ',s)-1);
Delete(s,1,Pos(' ',s));
if s1<>ps then
Begin
i:=0;j:=0;b:=true;
While (i<Length(s1))and(b) do
Begin
inc(i);
if not (('a'<=s1[i])and(s1[i]<='z')) then inc(j);
if not (s1[i]=st[i-j])and (('a'<=s1[i])and(s1[i]<='z')) then b:=false;
End;
if b then writeln(s1);
End;
End;
End.

вот такую схему нарисовал...
(в прикрепленном файле)
что-то я запутался со стрелками, там два цикла и оператор if вложены

Сообщение отредактировано: Александр Сергеевич - 30.11.2012 1:00


Эскизы прикрепленных изображений
Прикрепленное изображение
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
мисс_граффити
сообщение 1.12.2012 12:36
Сообщение #2


просто человек
******

Группа: Модераторы
Сообщений: 3 641
Пол: Женский
Реальное имя: Юлия

Репутация: -  55  +


ну во-первых было бы не лишним подписать возле всех условий да/нет.
во-вторых - ошибок дофига.
в "конец" должны приходить только одним способом - то, что идет по линии 4 (внешний цикл).Прикрепленное изображениеПрикрепленное изображение


--------------------
Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 25.06.2025 17:53
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"