Есть целая переменная n и вещественная переменная y. какие из следующих операторов присваивания верные, а какие нет и почему? var n: integer; y: real; a)y: =y+2 b) n: =n/2 c)n: =y*10 d)n: =n-3 e)y: =1 f)y: =sqr(n) g)n: =sqrt(9) h)y: =y mod 2
Переменным вещественного типа можно присваивать значения целого типа, но наоборот нельзя. Почему? Наверное потому, что множество целых чисел является подмножеством множества действительных. Теперь смотрим.
a) y:=y+2 - так можно, вещественное плюс целое = вещественное
b) n:=n/2 - нельзя, потому что результат n/2 это вещественное число
c) n:=y*10 - нельзя, то же самое
d) n:=n-3 - можно, результат целое число
e) n:=Sqrt(9) - нельзя, функция Sqrt возвращает вещественное число
f) y:=Sqr(n) - можно, функция Sqr возвращает значение целого или вещественного типа, в зависимости от значения выражения аргумента, в данном случае результат целое число
g) y:=y mod 2 - нельзя, операция mod применима только к целым операндам
Переменным вещественного типа можно присваивать значения целого типа, но наоборот нельзя. Почему? Наверное потому, что множество целых чисел является подмножеством множества действительных. Теперь смотрим.
a) y:=y+2 - так можно, вещественное плюс целое = вещественное
b) n:=n/2 - нельзя, потому что результат n/2 это вещественное число
c) n:=y*10 - нельзя, то же самое
d) n:=n-3 - можно, результат целое число
e) n:=Sqrt(9) - нельзя, функция Sqrt возвращает вещественное число
f) y:=Sqr(n) - можно, функция Sqr возвращает значение целого или вещественного типа, в зависимости от значения выражения аргумента, в данном случае результат целое число
g) y:=y mod 2 - нельзя, операция mod применима только к целым операндам