C++ Найти частное произведений четных и нечетных цифр четырехзначного числа.

0 голосов
150 просмотров

C++ Найти частное произведений четных и нечетных цифр четырехзначного числа.


Информатика (40 баллов) | 150 просмотров
0

Чётных по значению или по расположению?

Дан 1 ответ
0 голосов

#include

/* main program function */
int main()
{
  int
    iMulEven = 1,
    iMulOdd = 1,
    iNumber;
  char cMask = 0;

  std::cin >> iNumber;
  if (iNumber > 9999 || iNumber < 1000)
  {
    std::cout << "Error! Input the correct number!" << std::endl;<br>    return 0;
  }
  
  for (int i = 0; i < 4; i++)
  {
    int iEnd = iNumber % 10;
    if (iEnd % 2 == 0)
      iMulEven *= iEnd, cMask |= 1;
    else
      iMulOdd *= iEnd, cMask |= 2;
    iNumber /= 10;
  }

  if (cMask == 3)
    std::cout << static_cast<double>(iMulEven) / iMulOdd << std::endl;<br>  else if (cMask == 1)
    std::cout << "There is no odd digits exists." << iMulEven << std::endl;<br>  else
    std::cout << "There is no even digits exists." << iMulOdd << std::endl;<br>  return 0;
} /* end of the 'main' function */

(1.3k баллов)
0

добавь еще условие: если все цифры нечетные или все цифры четные, то вывод их произведения.

0

либо "error"

0

Так делать немного тупо, но для 4 итераций сойдёт...

0

в принципе не критично, если не подставлять значения с одинаковыми цифрами, ответ выходит неверный.

0

В исправленном варианте без ошибок, вроде.

0

да, все верно.