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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 29.11.2009, 13:26   #1
Nitriyc
Пользователь
 
Регистрация: 18.11.2009
Сообщений: 20
По умолчанию Инвертировать строку

Задание:Преобразовать строку, изменив порядок следования слов в строке на обратный. Надо написать программу с использованием подпрограмм и без использования COPY. Заранее спасибо.!!!

Программа:
Код:
program str;
var a:array[1..100] of string;
    b, s, r:string;
    n, k, j, i:byte;
begin
     writeln('vvedite stroky');
     readln(s);
n:=length(s);
k:=0;
for i:=1 to n do
begin
    r:=copy(s,i,1);
    if   r=' '
      then
                          begin k:=k+1;
                                a[k]:=b;
                                b:='';
                          end
       else b:=b+r;

end;
r:=copy(s,n,1);
if r<>' ' then   begin k:=k+1; a[k]:=b;end;
s:='';
for i:=k downto 1 do s:=s+a[i]+' ';
writeln (s);
end.

Последний раз редактировалось Stilet; 30.11.2009 в 11:42.
Nitriyc вне форума Ответить с цитированием
Старый 29.11.2009, 13:29   #2
ОДИНОЧЕСТВО В СЕТИ
Любопытная Вредина
Участник клуба
 
Аватар для ОДИНОЧЕСТВО В СЕТИ
 
Регистрация: 19.06.2009
Сообщений: 1,285
По умолчанию

Код:
var s,sub:stRing;
i,n:integer;
a:array[1..100] of string;
q:set of char;
begin
readln(s);
i:=0;n:=0;
q:=[' ',',' , '-', '!', '?', ';',':','.'];
repeat
inc(i);
if s[i] in q then begin
inc(n);
a[n]:=sub;
sub:='';
end
else if not (s[i] in q) then sub:=sub+s[i];
until(i=length(s));
if sub<>'' then begin
inc(n);
a[n]:=sub;
end;
s:='';
for i:=n downto 1 do
s:=s+a[i]+' ';
writeln('new string:',s);
readln;
end.
Дурь - это особая форма материи, которая не возникает ниоткуда и не исчезает никуда, а лишь переходит из одной головы в другую.

Последний раз редактировалось ОДИНОЧЕСТВО В СЕТИ; 30.11.2009 в 11:51.
ОДИНОЧЕСТВО В СЕТИ вне форума Ответить с цитированием
Старый 30.11.2009, 02:11   #3
Nitriyc
Пользователь
 
Регистрация: 18.11.2009
Сообщений: 20
По умолчанию

Этот код у меня не работает
Nitriyc вне форума Ответить с цитированием
Старый 30.11.2009, 11:43   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Этот код у меня не работает
Да код с ошибками.
Между прочим была такая уже задача.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 30.11.2009, 11:52   #5
ОДИНОЧЕСТВО В СЕТИ
Любопытная Вредина
Участник клуба
 
Аватар для ОДИНОЧЕСТВО В СЕТИ
 
Регистрация: 19.06.2009
Сообщений: 1,285
По умолчанию

Цитата:
Этот код у меня не работает
ну конечно вставить одну букву и описать еще 1 переменную на которые паскаль сам указывает это ж труд великий неподъемный для среднестатистического студента
Дурь - это особая форма материи, которая не возникает ниоткуда и не исчезает никуда, а лишь переходит из одной головы в другую.
ОДИНОЧЕСТВО В СЕТИ вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Инвертировать связный список levandowskiy Общие вопросы C/C++ 2 21.08.2009 15:20
Программа Вводит символьную строку и число N и выводит строку, состоящую из первых N символов (С++) Yulai Помощь студентам 1 11.05.2009 11:39
Инвертировать стэк в C++ Drozvd Помощь студентам 0 09.04.2009 03:58
Как при нажатии на строку в Listbox передавать нажатую строку в переменную Михаил Юрьевич Общие вопросы Delphi 5 16.03.2009 12:59
Инвертировать таблицу? Ash БД в Delphi 2 29.01.2009 02:23