Преобразование типов

Преобразование типов
#include "stdafx.h"
using namespace std;

double sqr(double rostM);

int _tmain(int argc, _TCHAR* argv[])
{
setlocale(LC_ALL, "russian");

int rostD, rostF, vesFn= 0;
double BMI, rostM, vesKg= 0;
const char mnozhR = 0.0254;
const char mnozhV = 2.2;
const char koof = 12;

cout< < "Введите рост в футах: ";
cin>> rostF;
cout< < "Введите рост в дюймах: ";
cin>> rostD;
cout< < "Введите вес в фунтах: ";
cin>> vesFn;

rostM=(rostF*12+rostD)*0.0254;
vesKg=vesFn/2.2;
BMI=vesKg/sqr(rostM);
cout< < BMI<< endl;
system("PAUSE");
return 0;
}

double sqr(double num)
{
return num*num;
}

при замене чисел 12, 0.0254 и 2.2 соответствующим им символьным константам, компилится , но ответ не удовлетворяет полностью, т.к. меняются значения очень круто. Я так понимаю проблема в преобразовании типов т.к. вот они предупреждения:
Предупреждение 1 warning C4244: инициализация: преобразование "double" в "const char", возможна потеря данных
Предупреждение 2 warning C4244: инициализация: преобразование "double" в "const char", возможна потеря данных.
Гуглил, решить проблему не смог. Укажите бегиннеру на ошибку пожалуйста.

  • Простите, а зачем вообще такое извращение?