• Паскаль.

    Какое обращение к процедуре 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);

Ответы 4

  • Спасибо большое! помогите пожалуйста еще с одним https://znanija.com/task/27582521
    • Автор:

      omar
    • 4 года назад
    • 0
  • а почему первый вариант верный? там ведь тоже два разных типа складывается?
  • Там параметр real в процедуре. И при сложении real
  • S(y+x, y, z); - ошибкаy+x имеет тип real+byte = real и не может быть подставлен туда, где ожидался byte. Это связано с запретом в Паскале неявного приведения вещественного типа к целочисленному.
    answer img
  • Добавить свой ответ

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years