Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.12.2011, 20:42   #1
Грета
Пользователь
 
Регистрация: 08.12.2011
Сообщений: 17
По умолчанию процедуры и функции.....

Помогите пожалуйста.задание такое: Дана строка символов. Группы символов, разделенные одним или несколькими пробелами и не содержащие пробелов внутри себя, будем называть словами. Найти длину самого короткого слова.

создать программу на турбо паскаль с помощью процедур или функции.


есть программа:


Program my; ^
¦var ¦
¦ s: string; -
¦ c, wl, wlmin, sl: integer; -
¦ inword: boolean; -
¦begin -
¦ write('string? '); -
¦ readln(s); -
¦ c := 1; -
¦ sl := length(s); -
¦ inword := false; -
¦ wlmin := sl; -
¦ while c <= sl do begin -
¦ if not inword and (s[c] <> ' ') then begin -
¦ inword := true; -
¦ wl := 0; -
¦ end; -
¦ if inword and (s[c] <> ' ') then -
¦ inc(wl); -
¦ if inword and ((s[c] = ' ') or (c = sl)) then begin -
¦ if wl < wlmin then Ў
L======= 1:1 =====<¦--------------------------------------------------------->--
F1 Help F2 Save F3 Open Alt+F9 Compile F9 Make Alt+F10 Local menu
File Edit Search Run Compile Debug Tools Options Window Help
г=[¦]============================= 829D~1.PAS ===========================1=[¦]=¬
¦ wl := 0; ^
¦ end; -
¦ if inword and (s[c] <> ' ') then -
¦ inc(wl); -
¦ if inword and ((s[c] = ' ') or (c = sl)) then begin -
¦ if wl < wlmin then -
¦ wlmin := wl; -
¦ inword := false; -
¦ end; -
¦ inc(c); -
¦ end; -
¦ writeln('min word length: ', wlmin); ¦
¦end. -
¦


не пойму что не так...........
Грета вне форума Ответить с цитированием
Старый 27.12.2011, 21:10   #2
ByAlex
Форумчанин
 
Аватар для ByAlex
 
Регистрация: 15.03.2011
Сообщений: 465
По умолчанию

Вот версия для латиницы -
Код:
program Project1;

{$APPTYPE CONSOLE}

uses
  SysUtils;
var
  Str:string;
  min,temp,i:Integer;
begin
  Write('Vvedite stroku - ');
  Readln(Str);
  min:=Length(Str);
  for i:=1 to Length(Str) do
  begin
    if Str[i] in ['a'..'z'] then
      inc(temp)
    else
    if Str[i]=' ' then
    begin
      if temp>=0 then
        if temp<min then
          min:=temp;
      temp:=0;
    end;
  end;
  write('Min = ',min);
  readln;
end.
Помог - жми на весы!
ByAlex89@mail.ru
ByAlex вне форума Ответить с цитированием
Старый 27.12.2011, 21:40   #3
Грета
Пользователь
 
Регистрация: 08.12.2011
Сообщений: 17
По умолчанию

большое спасибо,подругу мою выручили.спасибо)
Грета вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Процедуры и функции!!!! k4k7u3 Помощь студентам 0 12.12.2010 18:41
Процедуры и Функции hewlett Помощь студентам 1 13.05.2010 15:18
Процедуры и функции GOSHA24Rus Помощь студентам 0 20.12.2009 06:56
процедуры и функции shelest Помощь студентам 3 02.11.2009 18:50
Процедуры и функции Алeксандр Паскаль, Turbo Pascal, PascalABC.NET 1 22.01.2009 04:54