Определите, какое число будет напечатано в результате выполнения следующего алгоритма (для Вашего удобства алгоритм представлен на четырёх языках программирования).
| Бейсик | Паскаль |
|---|---|
DIM A, B, T, N AS INTEGER A = -20: B = 20 N = 0 FOR T = A TO B IF F(T) >= 0 THEN N = N+1 END IF NEXT T PRINT N FUNCTION F(x) F = 16*(9-x)*(9-x)+127 END FUNCTION | var a, b, t, N :integer; Function F(x: integer):integer; begin F := 16*(9-x)*(9-x)+127; end; BEGIN a := -20; b := 20; N := 0; for t := a to b do begin if (F(t) >= 0) then begin N := N+1; end; end; write(N); END. |
| Си++ | Алгоритмический |
#include <iostream> using namespace std; int F(int x) { return 16*(9-x)*(9-x)+127; } int main() { int a, b, t, N; a = -20; b = 20; N = 0; for (t=a; t<=b; t++){ if (F(t) >= 0) { N++; } } cout « N « endl; } | алг нач цел a, b, t, N a := -20; b := 20 N := 0 нц для t от a до b если F(t) >= 0 то N := N+1 все кц вывод N кон алг цел F(цел x) нач знач := 16*(9-x)*(9-x)+127 кон |
| Python | |
def f(x): return 16*(9-x)*(9-x)+127 a = -20 b = 20 N = 0 for t in range(a, b+1): if (f(t) >= 0): N += 1 print(N)
| |
Алгоритм предназначен для нахождения количества целых точек на отрезке [−20; 20] в которых функция F(x) = 16 · (9 − x)2+127 имеет значение большее, либо равное нулю. Следовательно, задачу можно свести к неравенству:
Данное неравенство будет выполнятся во всех целых точках отрезка [−20; 20]. Всего отрезок [−20; 20] содержит 41 целую точку. Следовательно, ответ 41.
Ответ: 41.

