Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как найти первую цифру дробной части?


Страницы:   1 2

Pascal96 ©   (2009-11-17 08:41:00) 


Задание:
Присвоить переменной Z первую цифру из дробной части действительного числа K.


При помощи Frac нахожу остаток.
Но он ведь может быть любой длины! И поэтому применить DIV/MOD я не так просто не могу.
Как определить длину остатка? Т.е. кол-во чисел в него входящих.


Anatoly Podgoretsky   (2009-11-17 11:07:00) [21]

> Pascal96  (17.11.2009 10:56:14)  [14]

С какой стати? Слева целое, а справа реальное, притом меньше 0


Pascal96   (2009-11-17 11:03:00) [22]

У меня новая задачка: (описана выше)
Вроде бы просто, ан, что-то бошка совсем не варит (((( сегодня.


Pascal96   (2009-11-17 10:56:00) [23]


> Anatoly Podgoretsky ©   (17.11.09 10:33) [13]



Var
  Z: byte;
  X: real;
begin
  Z:= Trunc(X * 10) mod 10; { Спасибо Юрию Зотову, всё просто оказалось! )))}
 
  А я хотел как-то так:
  Z:= (Frac(X) ... и что-то там... Итог целое число.

End.


Anatoly Podgoretsky   (2009-11-17 10:33:00) [24]

> Pascal96  (17.11.2009 09:31:08)  [8]

Меня не интересует Z
И что ты собираешься помещать в Z ведь существует множество вариантов представления вещественных чисел и что ты собираешься помещать например для 0,001 в байт то.


Pascal96   (2009-11-17 10:05:00) [25]

Так, повторяю:
Заголовок - это задача в общем.
Дальше идёт описание задачи.
Затем, что я придумал и соответствующие всплывающие по ходу дела суб-вопросы.
Мне сразу же объяснили, что я двигаюсь не в ту сторону, т.е. моё решение ВООБЗЕ не верно и следовательно на возникающие ТАМ под-вопросы не имеют силу.
А встатье про XYZ, начинающие описывают только часть задачи.


sniknik   (2009-11-17 09:51:00) [26]

> Понимаете разницу? Вы придумали изначально неверный способ решения и задали не тот вопрос, который следовало.
> И если не заголовок топика, то ответ на вопрос мог бы быть только один - никак.
Юрий просто очень быстро тебя "раскусил", и "счастливый конец" наступил буквально после первого ответа... а вот не было бы понятного заголовка, а только вопрос с совершенно другой задачей через посредство которой ты пытался решить основную, и ничего бы не вышло, т.что все "в кассу". лучше бы подумал и сделал выводы, чем "отмазываться".


Pascal96   (2009-11-17 09:42:00) [27]

Я это читал.
Здесь другая тема.
Здесь я привёл задачу в общем, сказал, что я сделал (использовать Frac).
Так что, мимо кассы.


sniknik   (2009-11-17 09:39:00) [28]

про задачи, что стоит и что выполняется...
http://gunsmoker.blogspot.com/2008/10/x-y-z.html


Pascal96   (2009-11-17 09:31:00) [29]


> Причем тогда FRAC


Не я имел ввиду, что в итоге цифрУ надо поместить в Z.
А Frac участвует в промежуточных операциях.


Anatoly Podgoretsky   (2009-11-17 09:28:00) [30]


> Byte. Цифра ведь одна )

Причем тогда FRAC


Pascal96   (2009-11-17 09:28:00) [31]

Понятно.


Известен возраст мужика, и его 3-х сыновей.
Какой сын старше отца, но младше остальных?
Вывести результат примерно так: "2-й сын". Т.е.  №номер№ сына.


Юрий Зотов   (2009-11-17 09:08:00) [32]

> Pascal96   (17.11.09 08:51) [2]

Первоначальная проблема: как найти первую цифру дробной части. ЭТА задача решается элементарно.

Вы спросили: как найти длину дробной части. ЭТА задача общего решения не имеет вообще.

Понимаете разницу? Вы придумали изначально неверный способ решения и задали не тот вопрос, который следовало. И если не заголовок топика, то ответ на вопрос мог бы быть только один - никак.


Pascal96   (2009-11-17 08:55:00) [33]

Byte. Цифра ведь одна )


Anatoly Podgoretsky   (2009-11-17 08:53:00) [34]

> Pascal96  (17.11.2009 08:41:00)  [0]

Какого типа переменная?


Pascal96   (2009-11-17 08:51:00) [35]

Спасибо. )))
Вы меня опять выручили.


> Задавая вопрос, не подменяйте первоначальную проблему придуманной.


Из обычных чисел, циферки отделял DIV/MOD'ами. )


Юрий Зотов   (2009-11-17 08:49:00) [36]

1. Первая цифра дробной части: Trunc(X * 10) mod 10

2. > Как определить длину остатка? Т.е. кол-во чисел в него входящих.

Задавая вопрос, не подменяйте первоначальную проблему придуманной.


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо