kasyava |
Отправлено: 30.07.2005, 14:34 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 17
|
Помогите пожайлуста кто может!!!!
Есть Edit1 в который я ввожу число (например 12,2302) и Edit2 в котором при нажатии на кнопку должно вывестись число после запятой (т.е. 2302).
число знаков после запятой всегда одинаковое...
Буду рад если кто нить подскажет как это делается!!! |
|
Doga |
Отправлено: 30.07.2005, 18:26 |
|
Мастер участка
Группа: Участник
Сообщений: 575
|
CODE |
double DblA = 12,2302;
double MntsA = DblA — (double)((int)DblA);
|
|
|
Halfdead |
Отправлено: 02.08.2005, 08:04 |
|
Не зарегистрирован
|
QUOTE | CODE | double DblA = 12,2302;
double MntsA = DblA — (double)((int)DblA);
|
|
Не соответствует тех. заданию (DblA = 12,2302; MntsA = 0,23029999...).
Кстати double перед int не нужен.
2 kasyava:
CODE | double d1 = 12.3456;
Edit2->Text = ((AnsiString)(d1 * 10000))%10000;
| |
|
Halfdead |
Отправлено: 02.08.2005, 08:20 |
|
Не зарегистрирован
|
Скобку не там поставил, читать так:
CODE | Edit2->Text = (AnsiString)(d1 * 10000)%10000; |
Хотя и тот вариант рабочий. |
|
Boyko |
Отправлено: 02.08.2005, 10:08 |
|
Станционный диспетчер
Группа: Участник
Сообщений: 88
|
QUOTE (kasyava @ 30/07/2005, 13:34) | Буду рад если кто нить подскажет как это делается!!! |
Например так:
CODE |
int pos=Edit1->Text.AnsiPos(",");
if (pos!=0)
Edit2->Text=Edit1->Text.SubStr(pos+1,Edit1->Text.Length-pos); | |
|
olegenty |
Отправлено: 02.08.2005, 10:24 |
|
Ветеран
Группа: Модератор
Сообщений: 2412
|
2 Boyko — тогда уж
CODE |
int pos=Edit1->Text.AnsiPos(DecimalSeparator);
|
а то ХЗ, что там на самом деле является разделителем.
|
|
Doga |
Отправлено: 02.08.2005, 14:00 |
|
Мастер участка
Группа: Участник
Сообщений: 575
|
2Halfdead
QUOTE |
Не соответствует тех. заданию (DblA = 12,2302; MntsA = 0,23029999...).
|
Как раз соответствует! MntsA = 0,2302 . Похоже Вы объявляли DblA как float. Но даже в этом случае MntsA = 0.2301998 ...
QUOTE |
Кстати double перед int не нужен.
|
Эта запись
CODE |
(double)((int)DblA);
|
дана не для компилятора. Её цель — наглядно продемонстрировать очерёдность действий над операндом и тип возвращаемого значения выражения.
P.S.
QUOTE |
Кстати double перед int не нужен.
|
Запятая после "Кстати" нужна!
|
|
Halfdead |
Отправлено: 03.08.2005, 02:24 |
|
Не зарегистрирован
|
Мда...
QUOTE | Как раз соответствует! |
Посмотри-ка еще раз, что хотел получить наш молчаливый kasyava, а именно строку "2302". Смотрим, что получаете Вы: "0,2302" — чувствуешь разницу. Причем тут точность я право не знаю.
QUOTE | Её цель — наглядно продемонстрировать очерёдность действий над операндом и тип возвращаемого значения выражения. |
|
|
** avtoritet |
Отправлено: 03.08.2005, 02:40 |
|
Не зарегистрирован
|
[QUOTE]Посмотри-ка еще раз, что хотел получить наш молчаливый kasyava, а именно строку "2302". Смотрим, что получаете Вы: "0,2302" — чувствуешь разницу. Причем тут точность я право не знаю.
Скорее всего наш молчаливый kasyava хотел получить имеено 0,2302, а вопрос он задал для таких недогадливых как ты, наверняка, немножко некорректно. Хотя, я думаю, ты один из не многих, кто воспринял этот вопрос таким образом!!!
2302 от 0,2302 — какой смысл? Байда!
Сори, если немного жестоко выразился!
|
|
Halfdead |
Отправлено: 03.08.2005, 02:59 |
|
Не зарегистрирован
|
QUOTE | kasyava хотел получить имеено 0,2302 |
Тут даже телепатом не надо быть, чтоб понять обратное.
kasyava писал:
Ну где вы все увидели "0," ? |
|
** avtoritet |
Отправлено: 03.08.2005, 03:33 |
|
Не зарегистрирован
|
1) У касявы точно в школе были или имеются охеренные проблемы с алгеброй (математикой если хотите), например: "... число знаков после запятой всегда одинаковое..." — это не число, а количество.
Будь он помудрее, написал бы в скобках 0,2302.
2) Тебе то халвдид самому случайно не кажится ли, что касяве, нужно получить дробную часть?
3) У касявы сейчас есть ответы на оба варианта. А мы здесь спорим ниочем! Скоро БК "ВильямХил" будет принимать ставки на наш спор!
Вообще, касява, ради приличия что ли, утихомирь нас!
|
|
Георгий |
Отправлено: 03.08.2005, 07:18 |
|
Почетный железнодорожник
Группа: Модератор
Сообщений: 874
|
QUOTE (kasyava @ 30/07/2005, 15:34) | Есть Edit1 в который я ввожу число (например 12,2302) и Edit2 в котором при нажатии на кнопку должно вывестись число после запятой (т.е. 2302).
число знаков после запятой всегда одинаковое... |
да сделайте ему вот это, киньте исходники и он успокоится. |
|
olegenty |
Отправлено: 03.08.2005, 07:21 |
|
Ветеран
Группа: Модератор
Сообщений: 2412
|
Так Сергей (Boyko) ему уже ответил. с исходником.
|
|
Doga |
Отправлено: 03.08.2005, 11:54 |
|
Мастер участка
Группа: Участник
Сообщений: 575
|
QUOTE |
Вообще, касява, ради приличия что ли, утихомирь нас!
|
Причём тут Касява?! Это уже дело приципа!!!
|
|
Георгий |
Отправлено: 03.08.2005, 21:45 |
|
Почетный железнодорожник
Группа: Модератор
Сообщений: 874
|
QUOTE (olegenty @ 03/08/2005, 08:21) | Так Сергей (Boyko) ему уже ответил. с исходником. |
нее ) тут нужен исходник, что скачивается из нета, распаковывается и компилится |
|
olegenty |
Отправлено: 04.08.2005, 14:36 |
|
Ветеран
Группа: Модератор
Сообщений: 2412
|
угу, и ещё метнуться за него зарплату получить, пива попить... (типа двое из ларца, одинаковых с лица)
|
|
kasyava |
Отправлено: 05.08.2005, 08:01 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 17
|
Должен сказать, что с алгеброй у меня может быть и не очень, но мне нужно было получить не 0,2302 а именно "2302"...
Но все равно всем огромное спасибо за помощ.....
Оказались полезными оба варианта....
|
|