У меня проблемы с куском кода, и я хотел спросить, не могу ли я помочь. В основном я создаю программу, которая будет делить два числа, которые вводятся пользователем, и я хочу напечатать сообщение, если один из введенных чисел равен 0, однако эта часть кода работает некорректно. Ниже приведен код, который у меня есть.C++ распознающий входное значение 0
int main()
{
float n1 = 0.0, n2 = 0.0, quotent = 0.0;
int firstNumberRead = 0;
int secondNumberRead = 0;
firstNumberRead = scanf("%f", &n1);
secondNumberRead = scanf("%f", &n2);
//check that the attempt to read the number was successful
if (firstNumberRead && secondNumberRead == 1)
{
//divide the first number by the second number
quotent = (n1/n2);
//print quotent
printf("%f", quotent);enter code here
}
else if (firstNumberRead || secondNumberRead == 0)
{
printf("invalid input - divide by zero is not allowed");
}
else
{
printf("invalid input");
}
scanf("%f", &n1);
return (0);
}
'firstNumberRead && secondNumberRead == 1', скорее всего, не то, что вы на самом деле намерены. Посмотрите, как работают условия на C++. – user2296177