Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > Delphi, Kylix and Pascal


Ответ
 
Опции темы Опции просмотра
Старый 11.12.2016, 08:00   #1 (permalink)
Anastasia12
Member
 
Регистрация: 12.11.2016
Сообщений: 19
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию Строки, Pascal

Требуется переставить в начало строки все буквы в порядке их следования, затем цифры, и в конце – остальные символы. Рабочие строки не использовать.

Входные данные:
abh[b55](0123)jw((’)f)#dd&&87

Выходные данные:
abhbjwfdd55012387([]((’))#&&
Anastasia12 вне форума   Ответить с цитированием

Старый 11.12.2016, 08:00
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

Эти топики созданы ранее, по этому в них может быть решение вашего вопроса

Строки. Pascal
Строки, Pascal. Нужна помощь
Pascal, строки
Строки. Pascal
Строки. Pascal

Старый 11.12.2016, 08:58   #2 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от Anastasia12 Посмотреть сообщение
Рабочие строки не использовать.
Вот тут, пожалуйста, подробнее. Что значит "рабочие строки" и чего нельзя использовать? А что можно?
Vladimir_S вне форума   Ответить с цитированием
Старый 11.12.2016, 09:12   #3 (permalink)
Anastasia12
Member
 
Регистрация: 12.11.2016
Сообщений: 19
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

я не знаю( у меня со строка огромная беда((
Anastasia12 вне форума   Ответить с цитированием
Старый 11.12.2016, 10:35   #4 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от Anastasia12 Посмотреть сообщение
я не знаю( у меня со строка огромная беда((
Ну не знаю, устроит ли такое решение, ломал-ломал голову, как совсем обойтись без второй строки, но так и не придумал. Вот, "чем богаты":
Код:
Const
 Let=['a'..'z']+['A'..'Z'];
 Dig=['0'..'9'];

Var
 S,S1:String;
 i,L:Byte;

Begin
 Writeln('Enter the String:');
 Readln(S);
 L:=Length(S);
 S1:='';
 for i:=1 to L do
  if (S[i] in Let) then S1:=S1+S[i];
 for i:=1 to L do
  if (S[i] in Dig) then S1:=S1+S[i];
 for i:=1 to L do
  if Not(S[i] in Let) and Not(S[i] in Dig) then S1:=S1+S[i];

 Writeln('Result:');
 Writeln(S1);

 Readln
End.
Vladimir_S вне форума   Ответить с цитированием
Старый 11.12.2016, 10:47   #5 (permalink)
Anastasia12
Member
 
Регистрация: 12.11.2016
Сообщений: 19
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

спасибо большое
Anastasia12 вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




Часовой пояс GMT +4, время: 18:45.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.