IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Строки, извлечение числа из сроки
Maximka
сообщение 11.06.2006 11:01
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 16
Пол: Мужской

Репутация: -  0  +


Добрый день!!! Помогите пожалуйста решить такую задачу:
Допустим дана такая строка (13121123123-123123123). Как извлечь из нее число до первого знака опереции (*,-,/,+) b и поместить его в другую строку.
Конечно если знать что посли числа идет знак - то можно ипользовать эту реализацию.
function QWERTY(s : string):string;
var
i,p : byte;
sum : string;
begin
sum :='';
p := pos('-',s);
for i :=1 to p-1 do
sum := sum + s[i];
QWERTY := sum;
end;
begin
Writeln(Qwerty('100528749-300'));
end.
.
А если я не знаю, какой знак операции идет после числа. Как поступать в такой ситуации?????!!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
volvo
сообщение 11.06.2006 16:18
Сообщение #2


Гость






Maximka, ты опять неверно пытаешься делать... Смотри внимательно:
  for i := 1 to Length(out) do
case out[i] of
'0'..'9' : begin
if (out[i]>='0') and (out[i]<='9') then begin
out:=out+out[i];
val(out,num,error);
InstackR(s3,num); { <--- Здесь ! }
end;
end;
...

Если строка будет '123+234', сколько чисел у тебя будут занесены в стек? У тебя заносятся ЦИФРЫ! А это не нужно, надо занести именно числа... Я тебе уже говорил об этом. Кстати, зачем новую тему создал? Это же продолжение твоей предыдущей темы про "Польскую запись"...
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 12.08.2025 13:11
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"