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

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

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 23.11.2012, 23:26   #1
karamzin
Новичок
Джуниор
 
Регистрация: 23.11.2012
Сообщений: 2
По умолчанию Ввести строку и удвоить каждый символ "q"

Ввести строку и удвоить каждый символ "q"
karamzin вне форума Ответить с цитированием
Старый 23.11.2012, 23:37   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

В чем сложность?
for 1 to Длина строки if строка[i]='q' то write('qq') иначе write(строка[i])
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 24.11.2012, 03:49   #3
lamer_1
 
Регистрация: 17.11.2012
Сообщений: 4
По умолчанию

Код:
var s:string;
    i:integer;
begin
write('Введите строку: ');
readln(s); i:=0;
while i<=length(s) do
begin
  inc(i);
  if s[i]='q' then 
  begin
    insert('q',s,i);
    inc(i,2);
  end;
end;
writeln('Результат: ',s);
end.
lamer_1 вне форума Ответить с цитированием
Старый 24.11.2012, 13:27   #4
JIeIIIa
Пользователь
 
Регистрация: 21.12.2011
Сообщений: 54
По умолчанию

lamer_1, Ваше решение на строку "qq" выдает результат "qqq".

Вот так будет правильней
Код:
var s:string;
    i:integer;
begin
write('Введите строку: ');
readln(s); i:=0;
while i<=length(s) do
begin
  inc(i);
  if s[i]='q' then 
  begin
    insert('q',s,i);
    inc(i,1);
  end;
end;
writeln('Результат: ',s);
end.
JIeIIIa вне форума Ответить с цитированием
Старый 24.11.2012, 14:25   #5
TinMan
Форумчанин
 
Аватар для TinMan
 
Регистрация: 05.09.2011
Сообщений: 869
По умолчанию

Самое простое решение все же такое:
Код:
for i:=Length(s) downto 1 do if s[i]='q' then Insert('q',s,i);
Предпочитаю на "ты".
TinMan вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ввести строку и после каждого символа "q" ставить "**" karamzin Паскаль, Turbo Pascal, PascalABC.NET 2 25.11.2012 02:57
Удвоить каждый символ в строке мария2507 Microsoft Office Excel 7 22.12.2009 13:40
Удвоить каждый символ строки, потом перевернуть строку Didi Помощь студентам 6 20.05.2008 15:33