Что даст ** выходе данная программа?(ГЛАВНЫЙ ВОПРОС) Можно еще и краткое объяснение этой...

0 голосов
18 просмотров

Что даст на выходе данная программа?(ГЛАВНЫЙ ВОПРОС) Можно еще и краткое объяснение этой программы(желательно) Program v1z2 var a,b,a1,b1:real; procedure sd(x,y:real; var p,q:real); begin p:=(x+y)/2; q:=(x-y)/2; end; begin a:=2; b:=-4; sd(a,b,a1,b1); writeln('a=',a,'b=',b,'a1=',a1,'b1=',b1); sd(a,b,b1,a1); writeln('a=',a,'b=',b,'a1=',a1,'b1=',b1); sd(b,a,a1,b1); writeln('a=',a,'b=',b,'a1=',a1,'b1=',b1); end.


Информатика (17 баллов) | 18 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

В программе присутствует функция, предназначенная для поиска полусуммы и полуразности двух чисел.

Приведённый в задании код выполняет функцию три раза, изменяя параметры входящие и выходящие.

Стоит заметить, что при вызове функции, аргументы a и b копируются в функции в переменные a и b, а a1 и b1 - это переменные, предназначенные для возврата значений p и q соответственно.

Первое выполнение функции

a (x) = 2, b (y) = -4

p (a1) = (x + y) / 2 = (2 + (-4)) / 2 = -2 / 2 = -1

q (b1) = (x - y) / 2 = (2 - (-4)) / 2 = 6 / 2 = 3

Вывод

a = 2, b = -4, a1 = -1, b1 = 3

Второе выполнение функции

(изменили возвращаемые переменные)

a (x) = 2, b (y) = -4

p (b1) = (x + y) / 2 = (2 + (-4)) / 2 = -2 / 2 = -1

q (a1) = (x - y) / 2 = (2 - (-4)) / 2 = 6 / 2 = 3

Вывод

a = 2, b = -4, a1 = 3, b1 = -1

Третье выполнение функции

(изменили входные данные)

a (x) = -4, b (y) = 2

p (a1) = (x + y) / 2 = (-4 + 2) / 2 = -2 / 2 = -1

q (b1) = (x - y) / 2 = (-4 - 2) / 2 = -6 / 2 = -3

Вывод

a = 2, b = -4, a1 = -1, b1 = -3

(5.6k баллов)
0

Не идет программа..((