|
|
ru.algorithms- RU.ALGORITHMS ---------------------------------------------------------------- From : Vitaly Slobodskoy 2:5015/128.22 24 Oct 2002 21:58:25 To : Sergey Gridasov Subject : Re: MathString --------------------------------------------------------------------------------
23.10.02... *ТЫ хочешь поговорить об этом??*
SG> Есть математическое выpажение (напp. sin(12+asin(0.5))...), в котоpом все
SG> числа в N-pичной системе счисления [N=2,8,16], а надо полyчить тy же
SG> стpокy, но в котоpой все числа пеpе- ведены в 10-pичнyю системy
SG> счисления.
А что тут сложного?! - для начала нужно выделить числа из формулы (не
обязательно все сразу, лучше по порядку, чтобы в один проход), это несложно,
ибо число - это подстрока, которая:
1) состоит только из цифр и символа delimiter, разделяющего целую и дробную
часть
2) эта подстрока в исходной строке может содержаться только между символами,
определяющими арифметическую операцию и скобками (соответственно, может быть в
начале и в конце строки)
ВОт, на основе этого числа выделить легко. Как получить число из N-ой системы
счисления в 10-тичную, надеюсь, не надо, ибо это школа. Далее тебе нужно просто
вставить новые значения на место старых. Я бы реализовал всё это в один проход
по строке, сразу же заменяя найденные числа.
ЗЫ: мне подобная задачка попалась при поступлении в универ, на экзамене по
информатике. Там нам давали три часа на решение 4-х задач, 2-е из которых
лёгкие, а две - примерно такие, какая приведена. Да, всё это на листе бумажки.
:))
-----------------
Hадеюсь, хоть чем-то мог быть полезен! И, это... в следующий раз закрывайте
кран!
Slobodskoy Vitaly
e-mail: vital@mail.nnov.ru
fido: 2:5015/128.22
--- WP/95 Rel 1.78E (215.0) Reg.
* Origin: Видишь суслика? Вот и я не вижу... А он есть! (2:5015/128.22)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.algorithms/3908e358bb89.html, оценка из 5, голосов 10
|