Вопрос задан 22.07.2023 в 05:29. Предмет Информатика. Спрашивает Бакаева Оксана.

Что печатает следующая программа? Просто дайте объяснение. program p2 var

d,e,f,g,h,i,j,k:integer; funcion Sub1(x,y:integer):integer; var x,y:integer; begin if x+y=3 then Sub1:=3 else Sub1:=y-x; end; funcion Sub2(p,q:integer):integer; var R,S:integer; begin r:=Sub1(p,q); S:=Sub1(q,p); Sub2:=R+S; end; begin g:=4; h:=7; i:=9; j:=5; k:=2; d:=1; e:=3; f:=Sub1(g,h); f:=Sub2(i,j); f:=sub1(g,k); writeln(g,'',h,'',i,'',j,'',k,'',d,'',e,'',f); end.
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Приходько София.

в том виде как есть ничего не делает. После исправления ошибок, принимает следующий вид:

program p2;

var

   d, e, f, g, h, i, j, k : integer;

function Sub1(x, y : integer) : integer;

begin

   if x+y = 3 then Sub1 := 3 else Sub1 := y-x;

end;

function Sub2(p, q : integer) : integer;

begin

   Sub2 := Sub1(p, q)+Sub1(q, p);

end;

begin

   g := 4; h := 7; i := 9; j := 5; k := 2; d := 1; e := 3;

   f := Sub1(g, h);

   f := Sub2(i, j);

   f := sub1(g, k);

   writeln(g, ' ', h, ' ', i, ' ', j, ' ', k, ' ', d, ' ', e, ' ', f);

end.

и на выходе печатает следующее:

4 7 9 5 2 1 3 -2

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Давайте разберем программу шаг за шагом:

  1. Объявление переменных:
css
var d, e, f, g, h, i, j, k: integer;

Здесь объявляются 8 переменных типа integer: d, e, f, g, h, i, j, k.

  1. Определение функции Sub1(x, y: integer): integer;:
sql
function Sub1(x, y: integer): integer; var x, y: integer; begin if x + y = 3 then Sub1 := 3 else Sub1 := y - x; end;

Здесь объявляется функция Sub1, которая принимает два параметра x и y. Внутри функции, также объявляются переменные x и y (эти переменные перекрывают параметры функции). Функция возвращает 3, если сумма x и y равна 3, в противном случае она возвращает разницу между y и x.

  1. Определение функции Sub2(p, q: integer): integer;:
css
function Sub2(p, q: integer): integer; var R, S: integer; begin r := Sub1(p, q); S := Sub1(q, p); Sub2 := R + S; end;

Здесь объявляется функция Sub2, которая принимает два параметра p и q. Внутри функции, объявляются две переменные R и S. Затем вызывается функция Sub1 с аргументами p и q, и результат сохраняется в переменную R. Затем вызывается функция Sub1 с аргументами q и p, и результат сохраняется в переменную S. Функция Sub2 возвращает сумму R и S.

  1. Тело программы:
go
begin g := 4; h := 7; i := 9; j := 5; k := 2; d := 1; e := 3; f := Sub1(g, h); f := Sub2(i, j); f := Sub1(g, k); writeln(g, '', h, '', i, '', j, '', k, '', d, '', e, '', f); end.

Здесь происходит последовательная инициализация переменных g, h, i, j, k, d и e. Затем вызывается функция Sub1 с аргументами g и h, и результат сохраняется в переменную f. После этого вызывается функция Sub2 с аргументами i и j, и результат также сохраняется в переменную f. Наконец, вызывается функция Sub1 с аргументами g и k, и результат сохраняется в переменную f.

Наконец, программа выводит значения переменных g, h, i, j, k, d, e и f с помощью writeln.

Обратите внимание, что результаты вызовов функций Sub1 и Sub2 перезаписываются в переменную f, поэтому вывод на экран покажет значение переменной f после выполнения всех вычислений. В выводе будут последние присвоенные значения переменной f.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос