Помогите, что-то не получается. Программа должна находить в заданном наборе слово максимальной длины, а выводится длина всех символов
СПАСИБО!
Прикрепленные файлы
Z5.PAS ( 861 байт )
Кол-во скачиваний: 227
Посмотрите, пожалуйста, программу.. Никак не могу найти в чем моя ошибка..
я с бодуном сижу)) не стал ошибку искать. мой вариант:
uses crt;
var
i : integer;
s : string;
n : integer;
max : integer;
smax : string;
begin
clrscr;
writeln ('vvodi');
readln (s);
n := 0;
max := 0;
for i := 1 to length(s) do begin
if s[i] <> ' ' then
n := n + 1;
if (s[i] = ' ') or (i = length(s)) then
if n > max then begin
max := n;
smax := copy (s, i - n, n + 1);
n := 0;
end;
end;
writeln ('maximalnoe - ', smax);
readkey;
end.
uses wincrt;
var s,word: string;
max,p: integer;
begin
writeln ('введите строку');
readln (s);
max:=0;
repeat
begin
p:=pos(' ',s);
if p=0 then
begin
if length(s)>max then
begin
max:=length(s);
word:=copy(s,1,length(s));
end;
delete(s,1,max);
end
else if (p-1)>max then
begin
max:=p-1;
word:=copy(s,1,p-1);
delete(s,1,p);
end
else if ((p-1)<max) or ((p-1)=max) then delete(s,1,p);
end;
until length(s)=0;
writeln('Максимальная длина слова: ',max,'');
writeln('Самое длинное слово: ',word,'');
end.
ну сказал же что с бодуна..