ЕГЭ Информатика задание №21 Демонстрационный вариант 2019 Определите число, которое будет напечатано в результате выполнения следующего алгоритма. Для Вашего удобства алгоритм представлен на пяти языках программирования.
Примечание. Функции abs и iabs возвращают абсолютное значение своего входного параметра
Бейсик
DIM A, B, T, M, R AS LONG A = -20: B = 20 M = A: R = F(A) FOR T = A TO B IF F(T) <= R THEN M = T R = F(T) END IF NEXT T PRINT M + R FUNCTION F(x) F = abs(abs(x - 6) + abs(x + 6) - 16) + 2 END FUNCTION
Python
def F(x): return abs(abs(x - 6) + abs(x + 6) - 16) + 2 a = -20 b = 20 M = a R = F(a) for t in range(a, b + 1): if (F(t) <= R): M = t R = F(t) print (M + R)
Алгоритмический язык
алг нач цел a, b, t, M, R a := -20; b := 20 M := a; R := F(a) нц для t от a до b если F(t) <= R то M := t; R := F(t) все кц вывод M + R кон алг цел F(цел x) нач знач := iabs(iabs(x - 6) + iabs(x + 6) - 16) + 2 кон
Паскаль
var a, b, t, M, R : longint; function F(x: longint) : longint; begin F := abs(abs(x - 6) + abs(x + 6) - 16) + 2; end; begin a := -20; b := 20; 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 + R) end.
Си
#include <iostream> using namespace std; long F(long x) { return abs(abs(x - 6) + abs(x + 6) - 16) + 2; } int main() { long a = -20, b = 20, M = a, R = F(a); for (int t = a; t <= b; ++t) { if (F(t) <= R) { M = t; R = F(t); } } cout << M + R; return 0; }
ЕГЭ Информатика задание №21 Демонстрационный вариант 2018 Напишите в ответе число, которое будет напечатано в результате выполнения следующего алгоритма. Для Вашего удобства алгоритм представлен на пяти языках программирования.
Бейсик
DIM A, B, T, M, R AS LONG A = -20: B = 20 M = A: R = F(A) FOR T = A TO B IF F(T) <= R THEN M = T R = F(T) END IF NEXT T PRINT M+R FUNCTION F (x) F = 2*(x*x-1)*(x*x-1)+27 END FUNCTION
Python
def F(x): return 2*(x*x-1)*(x*x-1)+27 a = -20; b=20 M=a; R=F(a) for t in range(a,b+1): if (F(t) <= R): M=t; R=F(t) print (M+R)
Алгоритмический язык
алг нач цел a, b, t, M, R a:=-20; b:=20 M:=a; R:=F(a) нц для t от a до b если F(t) <= R то M:=t; R:=F(t) все кц вывод M+R кон алг цел F(цел x) нач знач:=2*(x*x-1)*(x*x-1)+27 кон
Паскаль
ar a, b, t, M, R :longint; function F(x: longint) : longint; begin F:= 2*(x*x-1)*(x*x-1)+27; end; begin a:=-20; b:=20; 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+R) end.
Си
#include <iostream> using namespace std; long F(long x) { return 2*(x*x-1)*(x*x-1)+27; } int main() { long a = -20, b = 20, M = a, R = F(a); for (int t = a; t <= b; ++t) { if (F(t)<= R) { M = t; R = F(t); } } cout << M + R; return 0; }
Демонстрационный вариант ЕГЭ 2017 г. – задание №21. Напишите в ответе число, которое будет напечатано в результате выполнения следующего алгоритма (для Вашего удобства алгоритм представлен на пяти языках программирования).
Бейсик
DIM A, B, N, t AS INTEGER A = -100: B = 100 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 = (x - 16)*(x + 25) END FUNCTION
Python
def f(x): return (x - 16)*(x + 25) a = -100 b = 100 n = 0 for t in range(a, b + 1): if f(t) <= 0: n = n + 1 print(n)
Алгоритмический язык
алг нач цел a, b, N, t a := -100; b := 100 N := 0 нц для t от a до b если F(t) <= 0 то N := N + 1 все кц вывод N кон алг цел F(цел x) нач знач := (x - 16)*(x + 25) кон
Паскаль
var a, b, N, t: integer; Function F(x: integer):integer; begin F := (x - 16)*(x + 25) end; begin a := -100; b := 100; N := 0; for t := a to b do begin if (F(t) <= 0) then N := N + 1 end; write(N) end.
Си
#include<stdio.h> int F(int x) { return (x - 16)*(x + 25); } void main() { int a, b, N, t; a = -100; b = 100; N = 0; for (t = a; t <= b; t++) { if (F(t) <= 0) { N++; } } printf("%d", N); }
Демонстрационный вариант ЕГЭ 2016 г. – задание №21
Напишите в ответе наименьшее значение входной переменной k, при котором программа выдаёт тот же ответ, что и при входном значении k = 10. Для Вашего удобства программа приведена на пяти языках программирования.
Бейсик
DIM K, I AS LONG INPUT K I = 1 WHILE F(I) < G(K) I = I + 1 WEND PRINT I FUNCTION F(N) F = N * N * N END FUNCTION FUNCTION G(N) G = 2*N + 3 END FUNCTION
Python
def f(n): return n*n*n def g(n): return 2*n+3 k = int(input()) i = 1 while f(i) < g(k): i+=1 print (i)
Алгоритмический язык
алг нач цел i, k ввод k i := 1 нц пока f(i) < g(k) i := i + 1 кц вывод i кон алг цел f(цел n) нач знач := n * n * n кон алг цел g(цел n) нач знач := 2*n + 3 кон
Паскаль
var k, i : longint; function f(n: longint): longint; begin f := n * n * n; end; function g(n: longint): longint; begin g := 2*n + 3; end; begin readln(k); i := 1; while f(i) < g(k) do i := i+1; writeln(i) end.
Си
#include<stdio.h> long f(long n) { return n * n * n; } long g(long n) { return 2*n + 3; } int main() { long k, i; scanf("%ld", &k); i = 1; while(f(i) < g(k)) i++; printf("%ld", i); return 0; }
Ответ:
Определите, какое число будет напечатано в результате выполнения следующего алгоритма:
Паскаль | Си | Python |
Var a,b,t,M,R:integer; Function F(x:integer):integer; begin F:=3*(x-2)*(x+6); end; BEGIN a:=-20; b:=20; 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(R); END. |
#include <stdio.h> int F(int x) { return(3*(x-2)*(x+6)); } int main(void){ int a, b, t, M, R; a=-20; b=20; M=a; R=F(a); for (t=a; t<= b; t++) { if (F(t)<R) { M=t; R=F(t); } } printf(″%d″, R); } |
def F(x): return 3*(x-2)*(x+6) a = -20 b = 20 M = a R = F(a) for t in range(a,b+1): if F(t) < R: M = t R = F(t) print(R)
|
Определите, какое число будет напечатано в результате выполнения следующего алгоритма:
Паскаль | Си | Python |
Var a,b,t,M,R:integer; Function F(x:integer):integer; begin F:= x*x + 2*x + 10; end; BEGIN a:=-10; b:=10; 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); END. |
#include <stdio.h> int F(int x) { return(x*x + 2*x + 10); } int main(void) { int a, b, t, M, R; a=-10; b=10; M=a; R=F(a); for (t=a; t<= b; t++) { if (F(t)< R) { M=t; R=F(t); } } printf(″%d″, M); } |
def F(x): a = -10 |
Определите, какое число будет напечатано в результате выполнения следующего алгоритма:
Паскаль | Си | Python |
Var a,b,t,M,R:integer; Function F(x:integer):integer; begin F:= x*x + 6*x + 10; end; BEGIN a:=-10; b:=10; 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); END. |
#include <stdio.h> int F(int x) { return(x*x + 6*x + 10); } int main(void) { int a, b, t, M, R; a=-10; b=10; M=a; R=F(a); for (t=a; t<= b; t++) { if (F(t)> R) { M=t; R=F(t); } } printf(″%d″, M); } |
def F(x): return x*x + 6*x + 10a = -10 b = 10 M = a R = F(a) for t in range(a,b+1): if F(t) > R: M = t R = F(t) print(M) |
Определите, какое число будет напечатано в результате выполнения следующего алгоритма:
Паскаль | Си | Python |
var a,b,t,M,R:integer; Function F(x: integer):integer; begin F := -3*(x-10)*(x+2)+2; end; BEGIN a := -20; b := 20; M := a; R:= F(a); for t := a to b do if (F(t)>R) then begin M := t; R:= F(t); end; write(M); END. |
#include <stdio.h> int F(int x) { return(-3*(x-10)*(x+2)+2); } int main(void) { int a, b, t, M, R; a = -20; b = 20; M = a; R= F(a); for (t = a; t<=b; t++) if (F(t)>R) { M = t; R= F(t); } printf(″%d″, M); } |
def F(x): return -3*(x-10)*(x+2)+2a = -20 b = 20 M = a R = F(a) for t in range(a,b+1): if F(t) > R: M = t R = F(t) print(M) |
Определите, какое число будет напечатано в результате выполнения следующего алгоритма:
Паскаль | Си | Python |
var a,b,t,M,R:integer; Function F(x:integer):integer; begin F := 3*(x-8)*(x-8) end; begin a := -20; b := 20; 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); end. |
#include <stdio.h> int F(int x) { return(3*(x-8)*(x-8)); } int main(void) { int a, b, t, M, R; a = -20; b = 20; M = a; R= F(a); for (t=a; t<= b; t++) { if (F(t)<R) { M = t; R= F(t); } } printf(″%d″, M); } |
def F(x): return 3*(x-8)*(x-8)a = -20 b = 20 M = a R = F(a) for t in range(a,b+1): if F(t) < R: M = t R = F(t) print(M) |
Определите, какое число будет напечатано в результате выполнения следующего алгоритма:
Паскаль | Си | Python |
var a,b,t,M,R:integer; Function F(x: integer):integer; begin F := 15*(5+x)*(5+x)+125; end; BEGIN a := -25; b := 25; 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; writeln(M); END. |
#include <stdio.h> int F(int x) { return(15*(5+x)*(5+x)+125); } int main(void) { int a, b, t, M, R; a = -25; b = 25; M = a; R= F(a); for (t=a; t<= b; t++) { if (F(t) > R)) { M = t; R= F(t); } } printf(″%d\n″, M); } |
def F(x): return 15*(5+x)*(5+x)+125a = -25 b = 25 M = a R = F(a) for t in range(a,b+1): if F(t) > R: M = t R = F(t) print(M) |
Определите, какое число будет напечатано в результате выполнения следующего алгоритма:
Паскаль | Си | Python |
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 <stdio.h> int F(int x) { return(16*(9-x)*(9-x)-127); } int main(void) { int a, b, t, N; a = -20; b = 20; N = 0; for (t=a; t<= b; t++) if (F(t) >= 0) N++; printf(″%d″, N); } |
def F(x): return 16*(9-x)*(9-x)-127a = -20 b = 20 N = 0 for t in range(a,b+1): if F(t) >= 0: N += 1 print(N) |
Определите, количество чисел K, для которых следующая программа выведет такой же результат, что и для K = 20:
Паскаль | Си | Python |
var i, k: integer; function F(x:integer):integer; begin F:=x*x+5*x; end; begin i := 15; readln(K); while (i > 0) and (F(i) > K) do i:=i-1; writeln(i); end. |
#include <stdio.h> int F(int x) { return(x*x+5*x); } int main(void){ int i, K; i = 15; scanf(″%d″, &k); while ( i > 0 && F(i) > K ) i—; printf(″%d″, i); } |
def F(x): return x*x + 5*x i = 15 k = int(input()) while (i > 0) and (F(i) > k): i -= 1 print(i)
|
Напишите в ответе количество различных значений входной переменной k, при которых программа выдаёт тот же ответ, что и при входном значении k = 64. Значение k = 64 также включается в подсчёт различных значений k.
Паскаль | Си | Python |
var k, i : longint; function f(n: longint) : longint; begin f := n * n + 20 end; begin readln(k); i := 12; while (i>0) and (f(i)>=k) do i := i-1; writeln(i) end. |
#include <stdio.h> int f(int n) { return(n*n + 20); } int main(void) { int i, K; scanf(″%d″, &k); i = 12; while (i > 0 && f(i) >= k) i = i-1; printf(″%d″, i); } |
def f(n): return n*n + 20 i = 12 k = int(input()) while (i > 0) and (f(i) >= k): i -= 1 print(i)
|
Напишите в ответе количество различных значений входной переменной k, при которых программа выдаёт тот же ответ, что и при входном значении k = 18. Значение k = 18 также включается в подсчёт различных значений k.
Паскаль | Си | Python |
var k, i : longint; function F(x: longint) : longint; begin if x < 2 then F:= 1 else F:=3* F(x-1) — F(x-2) end; begin i := 11; readln(K); while (i> 0) and (F(i) > K) do i:=i-1; writeln(i) end. |
#include <stdio.h> int f(int n) { if (x < 2) return(1); else return(3*f(x-1) — f(x-2)); } int main(void) { int i, K; i = 11; scanf(″%d″, &k); while ( i > 0 && f(i) > K) i = i-1; printf(″%d″, i); } |
def f(x): if x < 2: return 1 else: return 3*f(x-1) — f(x-2)i = 11 k = int(input()) while (i > 0) and (f(i) > k): i -= 1 print(i) |
Напишите в ответе наименьшее значение входной переменной k, при котором программа выдаёт тот же ответ, что и при входном значении k = 18.
Паскаль | Си | Python |
var k, i : longint; function f(n: longint): longint; begin f := n * n; end; function g(n: longint): longint; begin g := 2*n + 5; end; begin readln(k); i := 1; while f(i) < g(k) do i := i+1; writeln(i) end. |
#include <stdio.h> int f(int n) { return(n*n); } int g(int n) { return(2*n + 5); } int main(void) { int k, i; scanf(″%d″, &k); i = 1; while (f(i) < g(k)) i = i+1; printf(″%d″, i); } |
def f(n): return n*ndef g(n): return 2*n + 5k = int(input()) i = 1 while (f(i) < g(k)): i = i + 1 print(i) |
Определите, количество чисел k, для которых следующая программа выведет такой же результат, что и для k = 12?
Паскаль | PythonC | C++ |
var k, i : longint; function f(n: longint): longint; begin f:= 3*n*n - 2*n; end; begin readln(k); i := 1; while f(i) < k do i := i + 1; if f(i)-k <= f(i-1) then writeln(i) else writeln(i-1); end. |
def f(n): return 3*n*n - 2*n k = int(input()) i = 1 while f(i) < k: i += 1 if f(i)-k <= f(i-1): print(i) else: print(i-1)
|
#include <iostream> using namespace std; long f(long n) { return 3*n*n - 2*n; } int main(){ long k, i; cout >> k; i = 1; while ( f(i) < k ) i++; if (f(i)-k <= f(i-1)) cout << i; else cout << i-1; return 0; } |
Определите, количество чисел k, для которых следующая программа выведет такой же результат, что и для k = 13?
Паскаль | Python | C |
var k, i : longint; function f(n: longint): longint; begin f:= n*n*n - 5*n; end; begin readln(k); i := 1; while f(i) < k do i := i + 1; if 2*f(i)-k <= k-f(i-1) then writeln(i) else writeln(i-1); end. |
def f(n): return n*n*n - 5*n k = int(input()) i = 1 while f(i) < k: i += 1 if 2*f(i)-k <= kf(i-1): print(i) else: print(i-1)
|
#include <stdio.h> long f(long n) { return n*n*n - 5*n; } int main() { long k, i; scanf("%ld", &k); i = 1; while ( f(i) < k ) i++; if (2*f(i)-k <= k-f(i1)) printf("%ld", i); else printf("%ld", i-1); return 0; } |