Форум программистов, компьютерный форум, киберфорум
Наши страницы
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
 
Magestian
1 / 1 / 0
Регистрация: 25.09.2014
Сообщений: 125
1

Преобразовать строку, удалив все символы 'a' и продублировав все символы отличные от 'a'

23.10.2014, 01:32. Просмотров 254. Ответов 2
Метки нет (Все метки)

Дана строка A. Нужно преобразовать её, удалив все символы 'a' и продублировав все символы отличные от 'a'.
К.П.: Ввод qawaeara | Вывод: qqwweerr

Думал, это всё в одном цикле. Ан-нет.
Вот, что я написал:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Program delins;
var     c,f,s:string;
        i,l:integer;
 
Begin
writeln('Enter text string');
readln(s);
l:=length(s);
for i:=1 to l do
Begin
f:=copy(s,i,1);
if f='a' then delete(s,i,1) else if f<>'a' then insert(f,s,i);
 
End;
writeln('Transformed string ',s);
readln;
End.
Выдаёт много раз продублированный первый символ. Понимаю почему. Но как это по-другому осуществить?
Помогите сделать правильно, голова уже плавится ~_~
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.10.2014, 01:32
Ответы с готовыми решениями:

Преобразовать строку, удалив из нее все символы, не являющиеся буквами или цифрами
1. Дана строка символов. Преобразовать строку, удалив из нее все символы, не являющиеся буквами...

Процедуры: преобразовать текст, удалив все символы - не буквы, и заменив каждую большую букву маленькой
Есть текст - строка символов. Превратить его, удалив все символы, не являющиеся буквами, и заменив...

Найти и вывести в самом длинном слове все символы, отличные от заглавных латинских букв
Решить задачу с помощью паскаль

Преобразовать последовательность, удалив из неё символы, не являющиеся буквами
Здравствуйте! Помогите пожалуйста решить задачу. То есть вводим текст с цифрами, знаками...

Даны целое число n и символы s1,s2,.sn , среди которых есть двоеточие. Получить все символы после двоеточия
Задачка вроде понятная и я её даже решил,но я взял в основу строковый тип.Как в последствии...

2
ermolay
3435 / 2374 / 2134
Регистрация: 04.12.2011
Сообщений: 3,965
23.10.2014, 01:56 2
Цитата Сообщение от Magestian Посмотреть сообщение
как это по-другому осуществить?
проходить от конца строки к началу:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
program delins;
var
  s: string;
  i, l: integer;
begin
  write('Enter text string: ');
  readln(s);
  l := length(s);
  for i := l downto 1 do
    if s[i] = 'a' then delete(s, i, 1) else insert(s[i], s, i);
  writeln('Transformed string: ', s);
  readln;
end.
1
Magestian
1 / 1 / 0
Регистрация: 25.09.2014
Сообщений: 125
23.10.2014, 07:24  [ТС] 3
Действительно. Оно тогда бы не дублировало один и тот же элемент. Как всё просто. (действительно, мозгам отдыхать надо)

Спасибо Учту
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.10.2014, 07:24

Дан текст, в который входят любые символы. Удалить из него все символы не являющиеся буквами или цифрами
Дан текст, в который входят любые символы. Удалить из него все символы не являющиеся буквами или...

Даны две символьные переменные, в которых все символы, кроме одного, одинаковы. Определить номер позиции, в которй символы отличаются
Ребят помогите решить задачи Задание 3 Даны две символьные переменные, по 4 символа каждая, ...

В строке все символы ‘7’ и ‘!’ заменить на символы ‘?’
1.Дана символьная строка S. Скопировать первые N сиволов из исходной строки в новую. N вводиться с...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru