Предмет: Информатика, автор: паоло

Возможен ли следующий оператор присваивания при каком-нибудь описании переменной x? Ответ обосновать.
x:=round(sqrt(x)) mod 6*x+x mod 2/x.

Ответы

Автор ответа: A1dar
0
Заметим выражение x mod 2. Оператор mod допустим только для целочисленных типов операндов. Также в выражении есть оператор деления /, значит его значение получится вещественного типа. Противоречие.
Ответ: невозможен
Автор ответа: archery
0
все нормально. сначала взяли остаток а потом его поделили, противоречий нет
Автор ответа: A1dar
0
Поделили остаток, получили вещественное число. Это вам ничего не говорит?
Автор ответа: archery
0
мне то говорит, что результат действиетльное число и его надо присвоить х которое для мод должно быть целым, но это не очевидно и это надо описывать
Автор ответа: A1dar
0
я это в ответе и описал, для меня это очевидно
Автор ответа: archery
0
ответ вы пишете не для себя а для чайников
Автор ответа: archery
0
x mod 2 : требует чтоб х была integer
(x mod 2)/x : даже если все делится на цело, то результатом будет тип real
round(sqrt(x)) mod 6*x+x mod 2/x : конечный результат будет типа real т.е. х должен быть типа real, чтоб получить в себя результат
А это противоречит первому требованию
Так что без дополнительных операций приведения типов тут не обойтись

Ответ - нет

Похожие вопросы
Предмет: Алгебра, автор: RinaLeta