PDA

Просмотр полной версии : pascal



serenity
25.04.2008, 15:05
Помогите пожалуйста а то чето не могу разобратся =)
БОЛЬШОЕ Спасибо :)

Даны символы S1,S2,...Известно , что символ s1 отличен от восклицательного знака и что среди S2,S3... есть по крайней мере один восклицательный знак .Пусть S1,...,Sn символы данной последовательности , предшествующие первому восклицптельному знаку . Выяснить, имеется ли среди s1,...,Sn пара соседствующих букв "но" или "он".

MOTOCoder
25.04.2008, 15:12
А что непонятно?
Перебрать все пары символов до первого восклицательного знака, проверяя, не является ли пара одним из искомых сочетаний.

-----------------
А можно еще проще - обрезать все, что стоит после восклицательного знака и проверить существование искомого сочетания в полученной строке(функцией pos).

C_O_D_E
25.04.2008, 20:34
serenity
Да, кстати, если Вы используете (или хотя бы просите написать программу) на языке высоеого уровня, то пишите, пожалуйста, язык правильно : Pascal или хотя бы Паскаль.

Vovchik
26.04.2008, 13:56
C_O_D_E, он написал правельно тока к смаленькой буквы :D

Serge_Bliznykov
26.04.2008, 17:04
Vovchik,
он написал правИльно... Да нет! он написал "Re: poscal " это уже он исправил...

serenity
26.04.2008, 17:47
ну ошибка и что?

Vovchik
26.04.2008, 19:08
Serge_Bliznykov, а понятно :)

Хыиуду
28.04.2008, 11:51
Люблю в простых задачах сложные конструкции!
writeln(pos('он',copy(s,1, pos('!',s)))+pos('но',copy(s,1, pos('!',s)))>0);

serenity
28.04.2008, 18:19
writeln(pos('он',copy(s,1, pos('!',s)))+pos('но',copy(s,1, pos('!',s)))>0);
ммм..это типо че ?

Alex_Burn
28.04.2008, 19:57
ммм..это типо че ?


это "типо" решение вашей задачи!

Хыиуду, вы просто монстр (в хорошем смысле). ;)))
Решение просто поражает! В одну строку!!

С вашего позволения, чтобы serenity было понятней.


uses crt;
var s : string;
begin
clrscr;
s:='он - гений!';
writeln(pos('он',copy(s,1,pos('!',s)))+pos('но ',copy(s,1,pos('!',s)))>0);
s:='это не так!';
writeln(pos('он',copy(s,1,pos('!',s)))+pos('но ',copy(s,1,pos('!',s)))>0);
readkey;
end.

C_O_D_E
28.04.2008, 20:38
Alex Burn ну вы и загнули!!
У человека вопросы возникли, в Copy, а вы модули впихнули!

var s : string;
begin
readln(s)
writeln(pos('он',copy(s,1,pos('!',s)))+pos('но ',copy(s,1,pos('!',s)))>0);
readln;
end.

Alex_Burn
29.04.2008, 12:14
Из вопроса serenity лично мне не ясно, что именно ему(ей) не понятно

C_O_D_E, если у человека возникнут проблемы, то можно дать ему ссылочку на эту тему http://forum.developing.ru/showthread.php?t=13933 , где вы любезно рассказали о таких функциях, как clrscr и readkey, а также есть инфа о модуле crt.

Уж не вы ли писали:



Объясняю, потом перед преподом умом блистать будете.


А в этой теме, наоборот, пытаетесь упростить решение.
Странное непостоянство. ;-)

C_O_D_E
29.04.2008, 21:25
непостоянство = непредсказуемость. И жизнь становиться ярче!!!
Если человеку будет нало, сам найдет. А еще раз мне было лень одно и тоже писать.

nba_87
29.04.2008, 21:41
Пожалуйста помогите паскаль ето:
Создаешь файл целых чисел путем ввода данных с клавиатуры.В процессе чтеныя файла четные числа записать в стек,а нечетные - в очередь. Распечатать содержимое файла,очереди и стека

Хыиуду
30.04.2008, 11:21
nba_87, не плодите лишних сущностей без надобности. Вполне достаточно одной темы, не надо раскидывать свое сообщение по трем разным.