Cумма равна 35.
Процедура печатает число, если в неё передается n, большее единицы, и при этом сначала срабатывают две процедуры, вложенные в неё.
Передаётся число 10. Оно больше 1. Начинается процедура от числа 7. Оно больше 1. Начинается процедура от числа 4. Оно больше 1. Начинается процедура от числа 1. Оно не больше 1.
Возвращаемся к числу 4. Начинается f(4 div 2), то есть процедура от числа 2. Оно больше 1. Начинается процедура от числа -1. Оно меньше 1. Начинается процедура от 2 div 2, т.е от 1. Число не больше 1. Обе процедуры для двойки выполнены. Печатается 2.
Обе процедуры для числа 4 тоже выполнены. Печатается 4.
Возвращаемся к числу 7. Выполняется вторая процедура для 7, то есть f(3). Обе её процедуры ничего не печатают. Тогда она сама печатает 3.
Обе процедуры для числа 7 выполнены. Печатается 7.
Теперь к самому первому числу 10. Начинается вторая его процедура, то есть от числа 5. Начинается первая процедура от 5, то есть f(2). Обе процедуры для числа 2 ничего не делают, печатается 2. Вторая процедура от 5 тоже 2. Аналогично печатается 2.
Обе процедуры числа 5 выполнены. Печатается 5.
Обе процедуры числа 10 выполнены. Печатается 10.
Ура! осталось посчитать сумму напечатанного.
2+4+3+7+2+2+5+10=35
1.y=m1*m2/Sqr(r)
2. Program my;
var S,a,b,h:real;
begin
write('Введите длины оснований и высоты');
readln(a,b,h);
S:=(a+b)*h/2;
readln(S);
end.
3. Program my;
var a:integer;
begin
writeln('Введите трехзначное число');
readln(a);
If (a mod 10=7) then write('Данное число заканчивается на 7');
else write('Данное число не заканчивается на 7');
end.
4.Program my;
var a,b,:integer;
begin
readln(a,b);
If (a>b) then writeln(Sqr(a), b+10);
If (a=b) then writeln('Числа равны');
If (a<b) then writeln(Sqr(b), a+10);
end.
5.
Program my;
var a,b,c:integer;
begin
Readln(a,b);
For c:=a to b do
if (c mod 10=0) then
writeln (c);
end.