Возможен ли следующий оператор присваивания при каком-нибудь описании переменной 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, чтоб получить в себя результат
А это противоречит первому требованию
Так что без дополнительных операций приведения типов тут не обойтись

Ответ - нет

Вас заинтересует