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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 04.01.2009, 23:40   #1
maziLa
Пользователь
 
Регистрация: 08.12.2008
Сообщений: 30
По умолчанию Процедура в Паскале

Ребята помогите доделать маленькую процедурку в паскале :

задание такое == все слова в строке записать в обратной последовательности.

вот мой образец, исправте если я ошибся :

Код:
procedure word_vice_versa ; (var str, word :string );
var i : byte ;
    n, chk, f, j,temp : integer ;

Begin
  for i:=1 to length (str) do
   begin
    if (str[i] = ' ' ) then
     copy(str,1,(i-1)) := word;
     length(word) := n;
     chk := n div 2 ;
     f:=0;
     for j := 1 to n do
       begin
          temp:= str[i] ;
          str[n] := str[i] ;
          str[i] := temp;
          inc(f) ;
           if f>chk then break ;
       end;
   end;
writeln('Poluchenyy text ==>  ') ; readln(str) ;
End;
Впринципе существует процедура удаления нескольких пробелов между словами , а также пробела в начале строки...
maziLa вне форума Ответить с цитированием
Старый 05.01.2009, 12:03   #2
Fabio
Пользователь
 
Регистрация: 05.01.2009
Сообщений: 12
По умолчанию

Вот у меня такой код получился:

Код:
procedure word_vice_versa ; (var str: string);
var i , j , n: byte ;
    temp, word, str2: string;

begin
word:='';
str2:='';
for i:=1 to length(str) do
     if str[i]<>' ' then
          word:=word+str[i]
     else
          begin
               n:=length(word);
               for j:=1 to (n div 2) do
                    begin
                         temp:=word[j];
                         word[j]:=word[n-j+1];
                         word[n-j+1]:=temp;
                    end;
               str2:=str2+word;
               word:='';
          end;
writeln('Poluchenyy text ==>  ') ; writeln(str2) ;
end;
На вход - строка, внутри процедуры переворачивается каждое её слово и заносится в Str2.

Последний раз редактировалось Fabio; 05.01.2009 в 12:33.
Fabio вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
процедура в делфи Puffy Помощь студентам 2 30.09.2008 22:38
Процедура () GAGARIN-NEW Помощь студентам 3 17.12.2007 21:42
процедура Sergik1977 Паскаль, Turbo Pascal, PascalABC.NET 7 28.10.2007 16:36