Информатика (Анализ программ с циклами и подпрограммами)


1
2
3
4
5
6
7
8
9
10
  • 1
  • 2

Вопрос 21

Напишите в ответе число, которое будет напечатано в результате выполнения следующего алгоритма (для Вашего удобства алгоритм представлен на четырёх языках).  

БейсикПаскаль
DIM A, B, T, M, R AS INTEGER
 A = -11: B = 11
 M = A: R = F(А)
 FOR T = A TO B
    IF F(T) <= R THEN
        M = T
        R = F(T)
    END IF
 NEXT T
 PRINT M+25
 FUNCTION F(x)
    F = (x*x-25)*(x*x-25)+25
 END FUNCTION
var a,b,t,M,R :integer;
 Function F(x:integer):integer;
    begin
        F := (x*x-25)*(x*x-25)+25
    end;
begin
    a := -11; b := 11;
    M := a; R := F(a);
    for t := a to b do begin
        if (F(t) <= R) then begin
            M := t;
            R := F(t)
        end
    end;
    write(M+25)
end.
Си++Алгоритмический
#include <iostream>
using namespacestd;
int F(int x)
{
    return (x*x-25)*(x*x-25)+25;
}
int main()
{
    int a, b, t, M, R;
    a = -11; b = 11;
    M = a; R = F(a);
    for (t = a; t <= b; t++) {
        if (F(t) <= R) {
            M = t; R = F(t);
        }
    }
    cout << M+25 << endl;
}
алг
нач
цел a, b, t, M, R
a := -11; b := 11
M := a; R := F(a)
нц для t от a до b
    если F(t) <= R
    то
        M := t; R := F(t)
    все
кц
вывод M+25
кон
алг цел F(цел x)
нач
знач := (x*x-25)*(x*x-25)+25
кон
кон
Python

def f(x):

    return (x*x-25)*(x*x-25)+25

a = -11

b = 11

M = a

R = f(a)

for t in range(a, b+1):

    if (f(t) <= R):

        M = t

        R = f(t);

print(M+25)