ошибка: lvalue требуется как левый операнд присваивания при проверке делимости - PullRequest
0 голосов
/ 02 декабря 2018

На c ++ я хочу сказать, что если введенная сумма делится на 20, выведите решение.Тем не менее, он говорит, что операнд для второй строки должен быть слева.Заранее спасибо!

  cin >> amountEntered;
  if (amountEntered / 20 = 0)
  {
    cout << amountEntered/20;
  }

Это причина, по которой С ++ приводит к ошибке:

main.cpp:16:28: error: lvalue required as left operand of assignment
       if (amountEntered / 20 = 0)
                                ^

также, если я пытаюсь сказать, что введенная сумма НЕ делится на 20,это то, что "amountEntered / 20 == 0"?

1 Ответ

0 голосов
/ 02 декабря 2018

= означает присваивание, которое вызывает ошибку, потому что присваивать нечего.Проверка на равенство ==.

Кроме того, здесь вы не делаете целочисленную арифметику.Таким образом, все, что меньше 20, приведет к 0. Поэтому лучше протестировать по модулю :

if (amountEntered % 20 == 0) 
...