Форум С++

 

Ответить на сообщение

Вернуться к теме

Вы отвечаете на сообщение:

Автор: exp   (25.09.2009 в 20:20)
Подскажите чего я недопонимаю. попробовал что-то похожее сделать чтобы было поменьшн ошибочных ситуаций при вводе недопустимых значений
, и сталкнулся с такой проблемой.
--------------------------------------------
переприкрепил код
--------------------------------------------

здесь в функции getlnum() , которая должна читать double с консоли,
решил что примерно так нужно сделать
if (x =='.') num = (num * 10) + ch - '0';
else num += (double)(ch-'0')/ (y *= 10);
, до запятой считывается как обычное число, а после запятой
прибавляется каждый раз по результату деления на 10,100,1000, ....
пришлось привести к типу double?, чтобы хоть-как-то работало.
, Но, все еденицы после запятой как-будто игнорируются,
ничего не могу понять почему даже похоже что умножения на 10 , не происходит
.


Ваше имя:

Пароль:

Цитировать

Используйте тэги для выделения текста:
Код: [code][/code]
Жирный: [b][/b]
Наклонный: [i][/i]
URL: [url][/url]

Сообщение:

Прикрепить: