![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| Digit |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 54 Регистрация: 3.7.2005 Репутация: нет Всего: нет |
есть два числа типа real. меньшее из них считается равным 100% и нужно узнать на сколько прочентов второе число болише первого.
проблема в том, что делить real на real нельзя, а как обойти это не знаю... |
|||
|
||||
| mvdr |
|
|||
|
физик ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1349 Регистрация: 31.12.2004 Где: Волгоград, Россия Репутация: 1 Всего: 42 |
уж сколько раз твердили миру
пример: a=50,45 -> a1=5045 | ..................................| => a1>b1 => percent = 2994*100/5045 = 59,346 b=29,94 -> b1=2994 | Это сообщение отредактировал(а) Femida - 9.7.2005, 19:25 -------------------- Появляюсь редко, но часто метко Изображать идиота сложнее, чем изображать умного: полезнее и не каждому дано |
|||
|
||||
| Digit |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 54 Регистрация: 3.7.2005 Репутация: нет Всего: нет |
согласен, такой вариант прокатит, но при одноу условии - после запятой не более 2-х символов...
а у меня может быть и больше... (например чтонть типа 34.3453456) |
|||
|
||||
| mvdr |
|
|||
|
физик ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1349 Регистрация: 31.12.2004 Где: Волгоград, Россия Репутация: 1 Всего: 42 |
Digit, проблема решается легко: либо ставишь условие на кол-во знаков после запятой, либо автоматически приписываешь лишние нули (типа се числа домножаются на 1'000'000'000 или любое такое число.
-------------------- Появляюсь редко, но часто метко Изображать идиота сложнее, чем изображать умного: полезнее и не каждому дано |
|||
|
||||
| Digit |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 54 Регистрация: 3.7.2005 Репутация: нет Всего: нет |
Femida, навено подумаешь, что я совсем тупой, но как поставить условие на кол-во знаков после запятой? =)
|
|||
|
||||
| SPrograMMer |
|
|||
![]() Спамер :) ![]() ![]() Профиль Группа: Участник Сообщений: 442 Регистрация: 5.11.2004 Где: Краснодар Репутация: 2 Всего: 6 |
Ну так домнажай не на 100, а на... скока там у тебя знаков -------------------- животное = зверь законченный гентушник |
|||
|
||||
| Digit |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 54 Регистрация: 3.7.2005 Репутация: нет Всего: нет |
В том то и дело, что после запятой не ограниченное кол-во знаков... Точнее сколько real выдержит столько и будет... |
||||
|
|||||
| mvdr |
|
||||
|
физик ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1349 Регистрация: 31.12.2004 Где: Волгоград, Россия Репутация: 1 Всего: 42 |
-------------------- Появляюсь редко, но часто метко Изображать идиота сложнее, чем изображать умного: полезнее и не каждому дано |
||||
|
|||||
| Digit |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 54 Регистрация: 3.7.2005 Репутация: нет Всего: нет |
как мы можем вычесть percent из 100, если мы не можем его посчитать (он все еще real) есть в Делфях финкции для получения торлько целой части числа (в Паскала знаю trunc) |
||||
|
|||||
| Marriage |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 842 Регистрация: 4.5.2004 Где: Таганрог Репутация: нет Всего: 2 |
Что -то я не пойму ....
-------------------- Praemonitus, praemunitus |
|||
|
||||
| mvdr |
|
||||
|
физик ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1349 Регистрация: 31.12.2004 Где: Волгоград, Россия Репутация: 1 Всего: 42 |
Digit
Это сообщение отредактировал(а) Femida - 9.7.2005, 19:43 -------------------- Появляюсь редко, но часто метко Изображать идиота сложнее, чем изображать умного: полезнее и не каждому дано |
||||
|
|||||
| Digit |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 54 Регистрация: 3.7.2005 Репутация: нет Всего: нет |
обьясняю ситуацию: есть два числа типа real (a1 и a2) считаем третье число (rez):
получаем ответ от Делфей: "Invaild floating point operation" а вот почему нельзя, этого не знаю... может трудно реализовать или хавает много ресурсов под это дело... |
||||
|
|||||
| mvdr |
|
|||
|
физик ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1349 Регистрация: 31.12.2004 Где: Волгоград, Россия Репутация: 1 Всего: 42 |
Digit опять так же можно:
Это сообщение отредактировал(а) Femida - 9.7.2005, 19:46 -------------------- Появляюсь редко, но часто метко Изображать идиота сложнее, чем изображать умного: полезнее и не каждому дано |
|||
|
||||
| Digit |
|
||||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 54 Регистрация: 3.7.2005 Репутация: нет Всего: нет |
это тоже конечно хороший вариант, но опять одно НО: число берется из файла... мне проще "обрезать" числу хвост (оставить три знака после запятой)... |
||||||
|
|||||||
| Marriage |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 842 Регистрация: 4.5.2004 Где: Таганрог Репутация: нет Всего: 2 |
Digit
Чет я не понял ...
Здесь что, должна ошибка вылетать ??? Это сообщение отредактировал(а) Marriage - 9.7.2005, 19:54 -------------------- Praemonitus, praemunitus |
|||
|
||||
| Digit |
|
||||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 54 Регистрация: 3.7.2005 Репутация: нет Всего: нет |
это я писал...
не знаю должна или не должне, но у меня матюгается ... |
||||||
|
|||||||
| mvdr |
|
||||
|
физик ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1349 Регистрация: 31.12.2004 Где: Волгоград, Россия Репутация: 1 Всего: 42 |
Marriage а что ко мне то
Digit
-------------------- Появляюсь редко, но часто метко Изображать идиота сложнее, чем изображать умного: полезнее и не каждому дано |
||||
|
|||||
| Marriage |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 842 Регистрация: 4.5.2004 Где: Таганрог Репутация: нет Всего: 2 |
А что там точка делат ??? А ошибка точно именно на строчке с делением выдает ошибку, что - то мне не вериться в такое ... Это сообщение отредактировал(а) Marriage - 9.7.2005, 19:59 -------------------- Praemonitus, praemunitus |
|||
|
||||
| mvdr |
|
|||
|
физик ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1349 Регистрация: 31.12.2004 Где: Волгоград, Россия Репутация: 1 Всего: 42 |
Marriage скорее всего описка
-------------------- Появляюсь редко, но часто метко Изображать идиота сложнее, чем изображать умного: полезнее и не каждому дано |
|||
|
||||
| Digit |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 54 Регистрация: 3.7.2005 Репутация: нет Всего: нет |
так и есть - описка... =)
Marriage, так что поверь, а не хочешь проверь =) Femida, я запитался в этих кусках кода... можешь все целиком скинуть? З.Ы. Я - новичок, а умение обьяснять приходит с опытом... |
|||
|
||||
| Marriage |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 842 Регистрация: 4.5.2004 Где: Таганрог Репутация: нет Всего: 2 |
Digit
Скинь целиком .. -------------------- Praemonitus, praemunitus |
|||
|
||||
| Digit |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 54 Регистрация: 3.7.2005 Репутация: нет Всего: нет |
а откуда взялось n? Marriage, код очень большой... |
||||
|
|||||
| mvdr |
|
|||
|
физик ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1349 Регистрация: 31.12.2004 Где: Волгоград, Россия Репутация: 1 Всего: 42 |
Добавлено @ 20:20 проверь на работоспособность, пока Delphi под рукой нет -------------------- Появляюсь редко, но часто метко Изображать идиота сложнее, чем изображать умного: полезнее и не каждому дано |
|||
|
||||
| Marriage |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 842 Регистрация: 4.5.2004 Где: Таганрог Репутация: нет Всего: 2 |
Digit
Скинь свой код полностью ... Это сообщение отредактировал(а) Marriage - 9.7.2005, 20:27 -------------------- Praemonitus, praemunitus |
|||
|
||||
| mvdr |
|
|||
|
физик ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1349 Регистрация: 31.12.2004 Где: Волгоград, Россия Репутация: 1 Всего: 42 |
Marriage, зачем? пусть попробует - если работает, то весь код не нужен
-------------------- Появляюсь редко, но часто метко Изображать идиота сложнее, чем изображать умного: полезнее и не каждому дано |
|||
|
||||
| Marriage |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 842 Регистрация: 4.5.2004 Где: Таганрог Репутация: нет Всего: 2 |
НУ разве может быть такое :
-------------------- Praemonitus, praemunitus |
|||
|
||||
| Digit |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 54 Регистрация: 3.7.2005 Репутация: нет Всего: нет |
Femida, мы кажется снова не допоняли друг друга...
пользователь ничего не вводит... можно отбросить все знаки после 3-го знака после запятой (тоесть 4-й, 5-й и тд) |
|||
|
||||
| mvdr |
|
|||
|
физик ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1349 Регистрация: 31.12.2004 Где: Волгоград, Россия Репутация: 1 Всего: 42 |
Подправил, там глючок был Это сообщение отредактировал(а) Femida - 9.7.2005, 20:36 -------------------- Появляюсь редко, но часто метко Изображать идиота сложнее, чем изображать умного: полезнее и не каждому дано |
|||
|
||||
| Digit |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 54 Регистрация: 3.7.2005 Репутация: нет Всего: нет |
Femida, сорри... ступил
|
|||
|
||||
| mvdr |
|
|||
|
физик ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1349 Регистрация: 31.12.2004 Где: Волгоград, Россия Репутация: 1 Всего: 42 |
Digit, работает?
-------------------- Появляюсь редко, но часто метко Изображать идиота сложнее, чем изображать умного: полезнее и не каждому дано |
|||
|
||||
| Digit |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 54 Регистрация: 3.7.2005 Репутация: нет Всего: нет |
на 12-й сторочке твоего кода говорит: "Pointer type requiried"
|
|||
|
||||
| mvdr |
|
|||
|
физик ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1349 Регистрация: 31.12.2004 Где: Волгоград, Россия Репутация: 1 Всего: 42 |
т.к. n заранее известно, то от степени можно отказаться. КОД для случая округления до 3 знаков -------------------- Появляюсь редко, но часто метко Изображать идиота сложнее, чем изображать умного: полезнее и не каждому дано |
|||
|
||||
| Digit |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 54 Регистрация: 3.7.2005 Репутация: нет Всего: нет |
так тоже пробовал....
еще у меня вылетает такая ощибка после попытки скомпилить: ![]() это может быть причиной? Добавлено @ 21:10 на сколько я понял вот этот кусок нужен для считывания из файла:
ну так вот к моменту, когда надо посчитать проценты, значения уже считаны (меньшее в c, большее в s. извениюсь, что не сказал раньше...) Добавлено @ 21:14 попробовал такой вариант:
ругается на строчку с p... аналогичная ошибка:"Invaild floating point operation" Это сообщение отредактировал(а) Alex - 10.7.2005, 12:12 |
||||
|
|||||
| mvdr |
|
|||
|
физик ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1349 Регистрация: 31.12.2004 Где: Волгоград, Россия Репутация: 1 Всего: 42 |
приведи программу. Никто ее не сворует, а зато в переменных путаницы не будет
-------------------- Появляюсь редко, но часто метко Изображать идиота сложнее, чем изображать умного: полезнее и не каждому дано |
|||
|
||||
| Digit |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 54 Регистрация: 3.7.2005 Репутация: нет Всего: нет |
чтобы уже ваще ни каких не до пониманий не было кладу все:
Unit1
Project1
|
||||
|
|||||
| Illusion Dolphin |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1198 Регистрация: 3.5.2003 Репутация: 36 Всего: 63 |
(хватаясь руками за голову: или я схожу уже с ума или...)
Ложим на форму 3 компонента TEdit, у 2х первых из них назначаем одну и ту же процедуру OnChange:
Получаем нужный нам ответ. P.S. А "Invaild floating point operation" получали видимо как обычно из-за деления на ноль... поправьте меня, если что не так понял, но читая 3ю страницу я запутался что вам надо Это сообщение отредактировал(а) Illusion Dolphin - 9.7.2005, 22:43 -------------------- В мире всего две бесконечности: вселенная и человеческая глупость... На счёт вселенной я не уверен. Шифрование и организация фотографий - Photo Database 4.5 |
|||
|
||||
| Digit |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 54 Регистрация: 3.7.2005 Репутация: нет Всего: нет |
Оба числа 100 пудово были не нулевыми, а точнее только положительными... Добавлено @ 11:41 Illusion Dolphin, делал также. пробовал зазбивать твою строчку с if на несколько - всегда ругается на строчку где производится деление одногооперанда на другой.... |
|||
|
||||
| Marriage |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 842 Регистрация: 4.5.2004 Где: Таганрог Репутация: нет Всего: 2 |
Чему равны эти 2 операнда точно .???? Числа можешь привести .. -------------------- Praemonitus, praemunitus |
|||
|
||||
| Digit |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 54 Регистрация: 3.7.2005 Репутация: нет Всего: нет |
x1:= 2436
x2:= 4665 оба типа integer Добавлено @ 16:27 И еще... написал этот проблемный кусок кода (где производится деление) как отдельную прогу:
есть три поля Edit1, ...2, ...3 и кнопка Edit1 -> x1 Edit2 -> x2 Edit3 -> ответ все пашет лучше не куда |
|||
|
||||
| mvdr |
|
|||
|
физик ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1349 Регистрация: 31.12.2004 Где: Волгоград, Россия Репутация: 1 Всего: 42 |
Digit? у тебя случаем не Delphi 7? У нее иногда такое бывает
-------------------- Появляюсь редко, но часто метко Изображать идиота сложнее, чем изображать умного: полезнее и не каждому дано |
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |