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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 12.01.2010, 09:15   #1
saveliev87
 
Регистрация: 06.01.2010
Сообщений: 7
По умолчанию Паскаль, преобразование строки

10. Дана строка. Преобразовать ее, удалив каждый символ * и повторив каждый символ, отличный от *

Как звёздочку удалить, это понятно, а как символы повторять(не через массив)?
saveliev87 вне форума Ответить с цитированием
Старый 12.01.2010, 09:33   #2
IT-man
АльTRUEи$т
Форумчанин
 
Аватар для IT-man
 
Регистрация: 19.03.2009
Сообщений: 784
По умолчанию

Insert в помощь.
Цитата:
«Никто не войдет в Рай, имея хотя бы крупицу гордыни в своем сердце». «Аллах Красив и любит красоту. Гордыня означает отказ от истины и высокомерие»
IT-man вне форума Ответить с цитированием
Старый 12.01.2010, 09:34   #3
Alex_FF
Удален
Форумчанин
 
Регистрация: 02.12.2009
Сообщений: 309
По умолчанию

Используйте процедуру Insert.

Код:
var
   I: Integer;
   S: String;
begin
     ReadLn(S);
     I := 1;
     while I <= Length(S) do
     begin
          if S[I] = '*' then
               Delete(S, I, 1)
          else
          begin
               Insert(S[I], S, I + 1);
               I := I + 2;
          end;
     end;
     WriteLn(S);
     ReadLn;
end.
Alex_FF вне форума Ответить с цитированием
Старый 12.01.2010, 09:42   #4
saveliev87
 
Регистрация: 06.01.2010
Сообщений: 7
По умолчанию

Блин, во я туплю... спасибо)
saveliev87 вне форума Ответить с цитированием
Старый 12.01.2010, 10:43   #5
Rusl92
Форумчанин
 
Аватар для Rusl92
 
Регистрация: 30.03.2008
Сообщений: 392
По умолчанию

Можно еще проще))
считывать c:char и потом проверять - равен ли он *
если равен, то s:=s+c;

Удачи!)
Программирование - это великое искусство... Такое же как например и живопись!
Rusl92 вне форума Ответить с цитированием
Старый 12.01.2010, 13:54   #6
Базиля
Участник клуба
 
Аватар для Базиля
 
Регистрация: 03.12.2009
Сообщений: 1,013
По умолчанию

Цитата:
если равен
тогда уж наоборот, если не равен, то просто составлять новую строку, а потом ее вывести
Базиля вне форума Ответить с цитированием
Старый 12.01.2010, 17:07   #7
Alex_FF
Удален
Форумчанин
 
Регистрация: 02.12.2009
Сообщений: 309
Радость

Цитата:
Сообщение от Базиля Посмотреть сообщение
тогда уж наоборот, если не равен, то просто составлять новую строку, а потом ее вывести
и, к тому же, если не равен, то s := s + c + c, а не s := s + c
Alex_FF вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Преобразование строки Neeter Общие вопросы C/C++ 5 05.07.2009 16:25
Паскаль. Преобразование строки andronova Помощь студентам 1 13.04.2009 12:55
преобразование строки xaero93 Помощь студентам 3 05.03.2009 13:00
Преобразование строки(ASM) ManU Помощь студентам 4 11.06.2008 17:20
Преобразование строки во время kayman Общие вопросы Delphi 7 02.10.2007 15:41