Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.07.2011, 13:54   #1
Костя Соколов
Новичок
Джуниор
 
Аватар для Костя Соколов
 
Регистрация: 21.07.2011
Сообщений: 9
Вопрос проблема с функцией PensOld=pensOld%12;

я новенький и меня компилятор обижает


ВОТ КОД
Что не так ??


Код:
#include <iostream>
#include <iomanip>
#include <ctype.h>
using namespace std;
int main()
{
int old01,old02,old1,old2,old3;
double decpounds;

		decpounds=3.5;//3.51
		old01=decpounds*240;
		old02=old01/12;
		old1=old02/20;
		old2=(old01/12)-(20*old1);
                old3=old01%=12; /*тут гдето ошбка*/
		cout<<old1<<"."<<old2<<"."<<old3<<endl;
return 0;
}
ОШИБКА в том что у меня получаеть 3.10.0 вместо 3.10.2

вот моя система.
что не так объясните =*(
old01мне нужно получить умножение decpounds 3.51 на 240.
получить результат 842.4
old02 после разделить его на 12 и получить результат 70
old1 дальше 70 разделить на 20 и получиь результат 3
old2 потом сделать вот это (842.4/12)-(20*3) получить 10
old3 потом зделать 842.4%12 и получить результат 2

подскажите что исправить и где применять.



___________
Код нужно оформлять по правилам:
тегом [CODE]..[/СODE] (это кнопочка с решёточкой #)
Не забывайте об этом!
Модератор.
связь со мной по почте cokol1pro@gmail.com
или по скайпу coko1994
-_- хватит меня критиковать.

Последний раз редактировалось Serge_Bliznykov; 25.07.2011 в 15:12.
Костя Соколов вне форума Ответить с цитированием
Старый 25.07.2011, 14:18   #2
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Цитата:
old3=old01%=12
old3=old01%12 мб?
old01%=12 — это тоже самое, что old01=old01%12
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 25.07.2011, 15:37   #3
Костя Соколов
Новичок
Джуниор
 
Аватар для Костя Соколов
 
Регистрация: 21.07.2011
Сообщений: 9
По умолчанию

old01%12 тоже нето мне кажеться old1 потерял дробную вернее то что после точки 840 а нужно 842.4
как етого избежать =*(
или как вот ето пременить?
помогите
float decpounds: // сумма в десятичных фунтах
int pounds; // сумма в старых фунтах
float decfrac; // десятичная дробная часть
pounds = static_cast<int>(decpounds); // отбрасывание дробной части
decfrac = decpounds - pounds; // прибавление дробной части
связь со мной по почте cokol1pro@gmail.com
или по скайпу coko1994
-_- хватит меня критиковать.

Последний раз редактировалось Костя Соколов; 25.07.2011 в 15:39.
Костя Соколов вне форума Ответить с цитированием
Старый 25.07.2011, 15:58   #4
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

3.5*240==840
3.51*240==842.4(или 842 если целочисленный тип)
с 3.51 выдает правильный результат. (с 3.5 видимо тоже)
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 25.07.2011, 18:00   #5
Костя Соколов
Новичок
Джуниор
 
Аватар для Костя Соколов
 
Регистрация: 21.07.2011
Сообщений: 9
По умолчанию

извините за лишнюю панику код работает.
связь со мной по почте cokol1pro@gmail.com
или по скайпу coko1994
-_- хватит меня критиковать.
Костя Соколов вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема с функцией MeTeOpA C# (си шарп) 6 11.07.2011 00:07
проблема с функцией saix Общие вопросы C/C++ 14 28.10.2010 19:07
проблема с функцией IsNumber Paulsan Помощь студентам 10 20.10.2010 02:13
Проблема с функцией Replace... Oooleg Microsoft Office Excel 7 02.09.2009 05:22