![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как подсчитать дробные числа?
Новечек © (2006-11-15 15:50:00)Как подсчитать два дробных числа записанных в эдитах? С целыми числами все ясно :
I := strtoint(edit1.text + Edit2.text)
А вот как быть с дробными - ума не приложу... Помогите пожалуйста.
Anatoly Podgoretsky (2006-11-16 09:59:00) [1]> ASoft (16.11.2006 09:35:22) [22]
Ну автор молчит, наверно от стыда в уголочке плачет.
Нет что прийти и рассказать, а чего же я хочу.
ASoft (2006-11-16 09:35:00) [2]
> Anatoly Podgoretsky © (16.11.06 07:47) [17]
ну.. раз ясно автору все...
а я думал вопрос еще в силе, раз автора не видать :)
какие вы неугомонные :)
Anatoly Podgoretsky (2006-11-16 09:06:00) [3]> ЮЮ (16.11.2006 08:57:19) [19]
Вот эти дебри и есть, при передаче информации форматы должны быть согласованы, как правило в соглашении приходят к системному (математическому) ака точка соглашению.
Дельфи поддерживает работу с системным разделителем независимо от регионального.
Anatoly Podgoretsky (2006-11-16 09:04:00) [4]> ЮЮ (16.11.2006 08:55:18) [18]
Ты не прав, он должен быть или в первом или во втором TEdit или действительно третий вариант, автор не учел все возможности ввода.
ЗЫ не верное, DecimalSeparator не повлияет на слом, он всегда (если не лезть в дебри) правильный.
ЮЮ (2006-11-16 08:57:00) [5]
> З.Ы. Только на другом компьюетере StrToFloat может "сломаться"
> при другом DecimalSeparator
В том случае, конечно, еслт резульаь конкатенации записан как строка на одном компьютере, а читается на дркгом
ЮЮ (2006-11-16 08:55:00) [6]
> Никакой разницы, раз с целыми числами все ясно
Если в эдитах толко цифры, то следует вставить между ними DecimalSeparator :
f := StrToFloat(edit1.text + DecimalSeparator + Edit2.text)
З.Ы. Только на другом компьюетере StrToFloat может "сломаться" при другом DecimalSeparator
Anatoly Podgoretsky (2006-11-16 07:47:00) [7]
> а не как преобразовать и вывести число, получившееся путем
> конкатенации :)
Ну смотри сам
> С целыми числами все ясно:
> I := strtoint(edit1.text + Edit2.text)
Тогда по аналогии, сменить strtoint на strtofloat
Никакой разницы, раз с целыми числами все ясно
ASoft (2006-11-16 04:38:00) [8]вообще-то, афтор задал вопрос
> Как подсчитатьдва дробных числа записанных в эдитах
:)
а не как преобразовать и вывести число, получившееся путем конкатенации :)
Anatoly Podgoretsky (2006-11-15 21:15:00) [9]> Desdechado (15.11.2006 20:29:12) [12]
Можно и в начало второе, лишь бы в результате конкатенации получилось нормальная для функции строка
Anatoly Podgoretsky (2006-11-15 21:14:00) [10]> MikePetrichenko (15.11.2006 17:02:06) [6]
А я про дробные ничего не говорил, но там надо только сменить функцию и соблюдать синтаксис.
Например в первом "123,", а во втором "45" получим сначала строку 123,45 которую нормально преобразуем
Anatoly Podgoretsky (2006-11-15 21:12:00) [11]> MikePetrichenko (15.11.2006 17:02:06) [6]
Desdechado (2006-11-15 20:29:00) [12]мож, автор в случае дробного в какой-то эдит десятичный разделитель впихивает (в конец первого или начало второго)
MikePetrichenko (2006-11-15 18:51:00) [13]
> далее все ограничится флеймом мастаков
Конечно. А иначе, для чего мы здесь сегодня собрались? :)
Плохиш (2006-11-15 18:02:00) [14]
> Интересно, а автор вопроса откликнется? Или далее все ограничится
> флеймом мастаков, пока модератор не прикроет ветку?
Он пошёл в "Потрепаться" создавать новую ветку о том какие здесь все пративные-пративные...
Amoeba (2006-11-15 17:50:00) [15]Интересно, а автор вопроса откликнется? Или далее все ограничится флеймом мастаков, пока модератор не прикроет ветку?
MikePetrichenko (2006-11-15 17:47:00) [16]
> А кто сказал, что автор имел в виду десятичную позиционную
> систему счисления ?
Да хоть шестнадцатиричную.
Jeer (2006-11-15 17:27:00) [17]MikePetrichenko © (15.11.06 17:02) [6]
А кто сказал, что автор имел в виду десятичную позиционную систему счисления ?
MikePetrichenko (2006-11-15 17:02:00) [18]
> А чего смущает то, ты сначала попробуй.
Ничегоне смущает. Только что получим?
Да и с дробными тогда решения не верны.
В Edit1 '1111'
В Edit2 '2222'
На выходе получим ценлое
11112222
С дробными будет бред.
Либо постанова не верна, либо я баран :)
Anatoly Podgoretsky (2006-11-15 16:56:00) [19]> MikePetrichenko (15.11.2006 16:36:02) [2]
А чего смущает то, ты сначала попробуй.
Anatoly Podgoretsky (2006-11-15 16:55:00) [20]> Elen (15.11.2006 15:53:01) [1]
Я я вместо двух решений предлагаю одно
F := strtofloat(edit1.text) + strtofloat(Edit2.text);
Universum