Предмет: Информатика,
автор: Аноним
Дано предложение.
1) Найти два самые минимальные по длине соседствующие слова, и вывести на экран.
2) Вывести кол-во букв этих двух минимальных соседствующих слов.
Аноним:
Слова разделены пробелом, конечно же :)
Ответы
Автор ответа:
1
var txt: string;
i,k,n,m,mn: integer;
a: array of string;
begin
write('предложение: '); readln(txt);
k:=0; mn:=length(txt);
for i:=1 to length(txt) do
if txt[i]=' ' then k:=k+1;
k:=k+1;
setlength(a,k+1);
for i:=1 to k-1 do
begin
a[i]:=copy(txt,1,pos(' ',txt)-1);
delete(txt,1,pos(' ',txt));
end;
a[k]:=txt;
n:=length(a[1]);
for i:=2 to k do
begin
if n+length(a[i])<mn then
begin
mn:=n+length(a[i]);
m:=i-1;
end;
n:=length(a[i]);
end;
writeln('количество букв: ',mn);
writeln('слова: ',a[m],' ',a[m+1]);
end.
предложение: кот пришел домой в три часа ночи
количество букв: 4
слова: в три
i,k,n,m,mn: integer;
a: array of string;
begin
write('предложение: '); readln(txt);
k:=0; mn:=length(txt);
for i:=1 to length(txt) do
if txt[i]=' ' then k:=k+1;
k:=k+1;
setlength(a,k+1);
for i:=1 to k-1 do
begin
a[i]:=copy(txt,1,pos(' ',txt)-1);
delete(txt,1,pos(' ',txt));
end;
a[k]:=txt;
n:=length(a[1]);
for i:=2 to k do
begin
if n+length(a[i])<mn then
begin
mn:=n+length(a[i]);
m:=i-1;
end;
n:=length(a[i]);
end;
writeln('количество букв: ',mn);
writeln('слова: ',a[m],' ',a[m+1]);
end.
предложение: кот пришел домой в три часа ночи
количество букв: 4
слова: в три
Похожие вопросы
Предмет: Английский язык,
автор: Аноним
Предмет: Биология,
автор: 011234567890
Предмет: Алгебра,
автор: zaiksalisa
Предмет: Математика,
автор: pakentiseva
Предмет: Қазақ тiлi,
автор: Аноним