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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 14.12.2009, 21:57   #1
Lady IcE
 
Аватар для Lady IcE
 
Регистрация: 24.09.2009
Сообщений: 9
Вопрос Задачка в Delphi

Хелп! о_О"
Задан символьный массив S(n), n<=1000. Разработать программу, которая печатает в лексикографическом порядке все цифры, расположенные между первым и последним двоеточием. Если в наборе менее двух двоеточий или нет цифр, то напечатать соответствующее сообщение.

Буду очень благодарна ^___^
Желательно написать весь код программы от procedure и до end а не только серединку оО.
Тра-та-та о_О
^^"
Lady IcE вне форума Ответить с цитированием
Старый 14.12.2009, 22:36   #2
Alex_FF
Удален
Форумчанин
 
Регистрация: 02.12.2009
Сообщений: 309
По умолчанию

Код:
program Project7;

{$APPTYPE CONSOLE}

uses
  SysUtils;

const
  Len = 1000;

var
  S: Array[1..Len] of Char;
  R: Set of 0..9;
  N, I, J, First, Last: Integer;
  F, F1, F2: Boolean;
begin
  N := 0;
  while not EOLn do
  begin
    Inc(N);
    Read(S[N]);
  end;
  I := 1;
  J := N;
  F1 := False;
  F2 := False;
  while (I <= N) and (J >= 1) do
  begin
    if (S[I] = ':') and (not F1) then
    begin
      F1 := True;
      First := I;
    end;
    if (S[J] = ':') and (not F2) then
    begin
      F2 := True;
      Last := J;
    end;
    if F1 and F2 then Break;
    Inc(I);
    Dec(J);
  end;
  if First = Last then
    WriteLn('мало скобок')
  else
  begin
    R := [];
    F := False;
    for I := First + 1 to Last - 1 do
      if S[I] in ['0'..'9'] then
      begin
        Include(R, Ord(S[I]) - Ord('0'));
        F := True;
      end;
    if not F then WriteLn('нет цифр')
    else
      for I := 1 to 9 do
        if I in R then Write(I, ' ')
  end;
  ReadLn;
  ReadLn;
end.

Последний раз редактировалось Alex_FF; 14.12.2009 в 22:49.
Alex_FF вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задачка в delphi toffe Помощь студентам 3 14.12.2009 21:48
delphi задачка Natasha666 Помощь студентам 5 20.05.2009 13:05
Задачка в Delphi миха18 Помощь студентам 8 14.05.2009 21:34
Задачка с массивом (Delphi) 777UFO777 Помощь студентам 3 04.12.2008 23:51
Задачка на массивы в delphi 7 fredd Помощь студентам 4 27.11.2008 13:22