Паскаль.
Какое обращение к процедуре S содержит ошибку?
Procedure S (a:byte; b:real; var c:char);
Begin
c:=Chr(a);
b:=b+a;
end;
Var
x:byte;
y:real;
z:char;
Begin
...
Варианты ответов:
S(x, y+x, z);
S(2, sin(x), z);
S(x*2, x, z);
S(y+x, y, z);
Ответы
Ответ дал:
0
S(y+x, y, z);
- ошибка
y+x имеет тип real+byte = real и не может быть подставлен туда, где ожидался byte. Это связано с запретом в Паскале неявного приведения вещественного типа к целочисленному.
y+x имеет тип real+byte = real и не может быть подставлен туда, где ожидался byte. Это связано с запретом в Паскале неявного приведения вещественного типа к целочисленному.
Приложения:
Ответ дал:
0
Спасибо большое! помогите пожалуйста еще с одним https://znanija.com/task/27582521
Ответ дал:
0
а почему первый вариант верный? там ведь тоже два разных типа складывается?
Ответ дал:
0
Там параметр real в процедуре. И при сложении real
Вас заинтересует
2 года назад
2 года назад
9 лет назад
9 лет назад
10 лет назад
10 лет назад