Этот код должен отображаться, если первые 3 цифры дробной части содержат «9», но не работают. «mod» переменная, удивительно, равна 0 для любого числа.modf не работает должным образом
int main(void)
{
float number, dmod;
int mod;
double digit_1, digit_2, digit_3;
double search=9;
cout<<"Enter the number:";
cin>>number;
mod = modf(number, &dmod);
digit_1 = mod /100 % 10;
digit_2 = mod /10 % 10;
digit_3 = mod /1 % 10;
if((digit_1 == search) || (digit_2 == search) || (digit_3 ==search))
{
cout<<"mod contains 9"<<endl;
}
else
{
cout<<"mod does not contains 9"<<endl;
}
}
Что вы подразумеваете под 'null'? «Int» не может быть «null». – chris
Я имею в виду, что в переменной mod debugger значение 0 для любого числа. – mixaill