Информатика, вопрос задал vasiaska234 , 8 лет назад

Помогите, пожалуйста, составить программу, определяющую длину самого короткого слова в предложении. Если можно, то с объяснением. Даю 25 баллов.

Ответы на вопрос

Ответил degtyarev327
0
var i1,i,k,sl,min:integer;
s:string;begin
min:=1000;
k:=0;
readln(s);
s:=s+' ';
for i:=1 to length(s) do 
if s[i]=' ' then k:=k+1;
for i:=1 to k do begin
i1:=1;
while s[i1] <> ' ' do
begin
sl:=sl+1;
i1:=i1*k+1;
if s[i1]=' ' then begin
if sl<min then min:=sl;
sl:=0;
end;
end;
end;
writeln('Длина наименьшего:',min);
end.
Ответил degtyarev327
0
Фух сделал ппц сложновато чего-то
Ответил Аноним
0
хех)))
Ответил petyaGavrikov
0
Даже в старом паскале можно писать короче и проще:

var s:string; p,min:integer;
begin
readln(s);
s:=s+' ';
p:=pos(' ',s);
min:=p-1;
while p>0 do
begin
delete(s,1,p);
p:=pos(' ',s);
if (p<>0)and(p-1<min) then min:=p-1;
end;
writeln('Длина наименьшего: ',min);
end.

Пример:
Папа у Васи силён в математике
Длина наименьшего: 1
Ответил Аноним
0
// PascalABC.NET 3.3, сборка 1583 от 25.11.2017
// Внимание! Если программа не работает, обновите версию!

begin
  var a:=ReadlnString.ToWords;
  var i:=a.Select(t->t.Length).ToArray.IndexMin;
  Writeln('Самое короткое слово "',a[i],'" длиной ',a[i].Length)
end.

Пример
Зеленые бесцветные идеи яростно спят
Самое короткое слово "идеи" длиной 4
Ответил degtyarev327
0
Но он же на 5-м месте по популярности в мире
Ответил Аноним
0
Все... я не буду спорить с вами об очевидном. Популярность - вовсе не тот критерий, которым следует руководствоваться программисту.
Ответил degtyarev327
0
Спасибо за разговор, собирался питон выучить, теперь задумаюсь
Ответил Аноним
0
Если Вы собираетесь всю жизнь писать веб-приложения для браузеров - учите Питон на здоровье.
Ответил Аноним
0
Нравится синтаксис Питона - учите Ruby, по крайней мере, он компилятор.
Новые вопросы