Я грейдер для класса C++. Мои навыки в более продвинутых концепциях довольно недостаточны в целом из-за отсутствия практики, поэтому я не знаком с внутренними и внешними языками. Мой вопрос касается блока кода с необычной строкой в задании о кубиках.C++ логические операторы
#include <iostream>
using namespace std;
int main()
{
int numSims = numSims % 12 == 0 || numSims > 1000;
//Other irrelevant code follows
}
Я ничего не могу сказать, говоря, что это плохой синтаксис. Я не понимаю, почему ученик захочет сделать это, когда такое заявление, насколько я знаю, не может выполнить. Есть ли скрытый секрет здесь, чем мне не хватает?
Высказывание утверждения «не может выполнить» неточно, но код определенно является ошибкой. – juanchopanza
не секрет, его мусор. возможно, они означают 'bool stop = numsims ...' – pm100
Это, вероятно, студент, пытающийся быть умным, но не принимая во внимание разборчивость и согласованность в том, что весь оператор либо вернет 1, либо 0 (true или false). Тот факт, что он рекурсивный, также означает, что он приводит к неопределенному поведению. Время дать вашему ученику несколько марок! – Poriferous