12. Дана строка s, содержащая менее чем 256 символов и представляющая собой набор слов, разделенных одним или несколькими пробелами. Найти любое слово в исходной последовательности символов, начинающееся с комбинации букв но. Использовать стандартные процедуры и функции в действиях над строками.
need help)
очень прошу помочь))
завтра надо сдавать.
от работы будет зависеть, буду ли я сдавать экзамен, или получу автомат.
Прошу, помогите!)
uses crt;Вроде ничего не забыл
var
s,s1:string;
a:array [1..30] of string[20];
i,p:byte;
begin
clrscr;
readln(s);
s1:=s;
i:=1;
while pos(' ',s1)>0 do begin
delete(s1,pos(' ',s1),1);
end;
if s[1]=' ' then delete(s1,1,1);
if s[ length(s1)] <> ' ' then s1:=s1+' ';
i:=0;
repeat
p:=pos(' ',s1);
if p>0 then begin
inc(i);
a[i]:=copy (s1,1,p-1);
delete(s1,1,p);
end;
until p=0;
for i:=1 to i do if copy(a[i],1,2) = 'no' then writeln(a[i]);
readkey
end.
Бррр....
Что-то больно много переменных
Поскольку задачи сохранять выделенные из строки слова не стояло, то доп. переменные не нужны. А если показать вот такое решение преподавателю:
var s: string;, то еще неизвестно, кто пойдет служить
begin
s := ' begin end nothing nowhere eee';
s := s + ' ';
repeat
s := copy(s, pos(' ', s), length(s));
while (s <> '') and (s[1] = #32) do delete(s, 1, 1);
if copy(s, 1, 2) = 'no' then writeln(copy(s, 1, pos(' ', s)));
until s = '';
end.
как всегда, код высшего класса!
а я не пойду, это точно