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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 09.11.2010, 14:42   #1
Nikita++
Пользователь
 
Регистрация: 19.10.2010
Сообщений: 80
Стрелка Строки в Delphi

Привет всем!! Меня интересует такая вещь, как нахождение цифр в строке и присваивание их переменным типа integer. Нужно, чтобы для каждой цифры- своя переменная.


Пример:
Ввод:gf1rggr5rt

Нужно: a:=1;
b:=5;


Цифр всегда две.

Дальнейшие операции проведу сам. Заранее благодарен.
Nikita++ вне форума Ответить с цитированием
Старый 09.11.2010, 14:57   #2
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Цифры находятся на фиксированном месте? Или их положение в строке может меняться?
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 09.11.2010, 15:00   #3
Nikita++
Пользователь
 
Регистрация: 19.10.2010
Сообщений: 80
По умолчанию

Ну вроде да. Вот у меня в другой проблеме так:
'znak'цифра'znak'цифра'znak'

Это аналогичное, но лучше со 'znak'цифра'znak'цифра'znak' помогите

Но при этом цифра может быть +-1000000, a также дробь (4/7-например) может стоять.

Последний раз редактировалось Nikita++; 09.11.2010 в 15:03.
Nikita++ вне форума Ответить с цитированием
Старый 09.11.2010, 15:06   #4
Риндера
Delphi, учу С
Форумчанин
 
Аватар для Риндера
 
Регистрация: 20.10.2010
Сообщений: 178
По умолчанию

Код:
var first: boolean;
...
first := true;

for i:=1 to length(s) do
begin
if (s[i] in ['0'..'9']) and (first = true) then
   begin
   a := s[i];
   first := false;
   end;
if (s[i] in ['0'..'9']) and (first = false) then
   begin
   b := s[i];
   break;
   end;
end;
М? Что-то такое, но я пока не уверена, как оно работает)))

Последний раз редактировалось Риндера; 09.11.2010 в 15:13.
Риндера вне форума Ответить с цитированием
Старый 09.11.2010, 15:07   #5
Fog
Пользователь
 
Аватар для Fog
 
Регистрация: 29.08.2010
Сообщений: 76
По умолчанию

Если те надо цифры из стринга вытащить и переменным присвоить пройдись циклом по строке и отфильтруй цифры по ASCII кодам(кажется от 48=0..49=1 начинается). Если надо могу код выложить для твоей строки

А пока писал уже сделали OK

Последний раз редактировалось Stilet; 09.11.2010 в 15:33.
Fog вне форума Ответить с цитированием
Старый 09.11.2010, 15:09   #6
Nikita++
Пользователь
 
Регистрация: 19.10.2010
Сообщений: 80
По умолчанию

Fog, если можно,то да. Я строки только начал изучать.
Nikita++ вне форума Ответить с цитированием
Старый 09.11.2010, 15:10   #7
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Риндера, здесь не обязательно из строки удалять символы .
Nikita++, доступ к символу строки, также как и в массиве - строка[индекс_символа], только нумерация от единицы начинается.
Число символов в строке Length(строка).
Преобразовать символ цифры в число - StrToInt(строка)
Цитата:
[i] in ['0'..'9']
Проверка входит ли символ i строки s в множество символов от '0' до '9'
Этого достаточно для решения твоей задачи.
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика

Последний раз редактировалось Utkin; 09.11.2010 в 15:15.
Utkin вне форума Ответить с цитированием
Старый 09.11.2010, 15:13   #8
Риндера
Delphi, учу С
Форумчанин
 
Аватар для Риндера
 
Регистрация: 20.10.2010
Сообщений: 178
По умолчанию

Цитата:
Сообщение от Utkin Посмотреть сообщение
Риндера, здесь не обязательно из строки удалять символы .
А я люблю удалять символы :D *4-й раз переделывает код*
Риндера вне форума Ответить с цитированием
Старый 09.11.2010, 15:15   #9
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Цитата:
Сообщение от Риндера Посмотреть сообщение
А я люблю удалять символы :D *4-й раз переделывает код*
Удаление символа из строки само по себе медленно, ладно еще с краю, с середины еще медленней.
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 09.11.2010, 15:19   #10
Риндера
Delphi, учу С
Форумчанин
 
Аватар для Риндера
 
Регистрация: 20.10.2010
Сообщений: 178
По умолчанию

Цитата:
Сообщение от Utkin Посмотреть сообщение
Удаление символа из строки само по себе медленно, ладно еще с краю, с середины еще медленней.
Чем тут оффтопить, лучше б в мою темку заглянули, у мну работа стоит)
Риндера вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Строки в Delphi 534 Помощь студентам 22 24.02.2010 00:57
Строки в Delphi QuadroX Фриланс 9 08.02.2010 16:20
Строки Delphi Дешук Елена Помощь студентам 2 30.12.2009 16:39
строки в Delphi Михаил70 Помощь студентам 2 15.09.2009 02:05
#Delphi Строки forumu Помощь студентам 3 24.12.2007 23:31