Подробно и с объяснением! Допустим ли следующий оператор присваивания? Если да, то выпишите тип и итоговое значение переменной «y», если нет, то напишите, почему. y := round(3*7 Div y Mod 7/3)/y – Trunc(0.724)

Подробно и с объяснением! Допустим ли следующий оператор присваивания? Если да, то выпишите тип и итоговое значение переменной «y», если нет, то напишите, почему. y := round(3*7 Div y Mod 7/3)/y – Trunc(0.724)
Гость
Ответ(ы) на вопрос:
Гость
y := round(3*7 div y mod 7/3)/y – trunc(0.724) Для удобства анализа введем добавочные скобки и пробелы. y := round( ( (3 * 7) div y ) mod (7 / 3) ) / y – trunc(0.724) 3*7 даст величину целочисленного типа. Тип переменной y в операции (3*7) div y может быть по определению этой операции только целочисленным. Целочисленным будет и её результат. Деление 7/3 даст результат вещественный, так уж устроена операция "/" Получаем по типам: <целочисленный> mod <вещественный>. Операция mod определена только для целочисленных операндов, поэтому тут ошибка.
Не нашли ответ?
Ответить на вопрос
Похожие вопросы