Предмет: Информатика,
автор: паоло
Возможен ли следующий оператор присваивания при каком-нибудь описании переменной x? Ответ обосновать.
x:=round(sqrt(x)) mod 6*x+x mod 2/x.
Ответы
Автор ответа:
0
Заметим выражение x mod 2. Оператор mod допустим только для целочисленных типов операндов. Также в выражении есть оператор деления /, значит его значение получится вещественного типа. Противоречие.
Ответ: невозможен
Ответ: невозможен
Автор ответа:
0
все нормально. сначала взяли остаток а потом его поделили, противоречий нет
Автор ответа:
0
Поделили остаток, получили вещественное число. Это вам ничего не говорит?
Автор ответа:
0
мне то говорит, что результат действиетльное число и его надо присвоить х которое для мод должно быть целым, но это не очевидно и это надо описывать
Автор ответа:
0
я это в ответе и описал, для меня это очевидно
Автор ответа:
0
ответ вы пишете не для себя а для чайников
Автор ответа:
0
x mod 2 : требует чтоб х была integer
(x mod 2)/x : даже если все делится на цело, то результатом будет тип real
round(sqrt(x)) mod 6*x+x mod 2/x : конечный результат будет типа real т.е. х должен быть типа real, чтоб получить в себя результат
А это противоречит первому требованию
Так что без дополнительных операций приведения типов тут не обойтись
Ответ - нет
(x mod 2)/x : даже если все делится на цело, то результатом будет тип real
round(sqrt(x)) mod 6*x+x mod 2/x : конечный результат будет типа real т.е. х должен быть типа real, чтоб получить в себя результат
А это противоречит первому требованию
Так что без дополнительных операций приведения типов тут не обойтись
Ответ - нет
Похожие вопросы
Предмет: Українська мова,
автор: ktoto063
Предмет: Алгебра,
автор: va1596
Предмет: Литература,
автор: Аноним
Предмет: Алгебра,
автор: RinaLeta
Предмет: Литература,
автор: Ann1122