1) Напишите в ответе число, которое будет выведено в результате выполнения следующего алгоритма. Для Вашего удобства алгоритм представлен на пяти языках программирования.
def F(x): return 2*(x*x-100)*(x*x-100)+5 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 + 27)
var a, b, t, M, R: longint; function F(x: longint): longint; begin F := 2*(x*x-100)*(x*x-100)+5; 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 + 27) end.
#include <iostream> using namespace std; long F(long x) { return 2*(x*x-100)*(x*x-100)+5; } int main() { long 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); } } cout << M + 27 << endl; return 0; }
2) Определите число, которое будет напечатано в результате выполнения следующего алгоритма. Для Вашего удобства алгоритм представлен на трех языках программирования.
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)
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; long 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; }
3) Укажите количество различных значений входной переменной k, при которых приведённая ниже программа выводит тот же ответ, что и при входном значении k = 10. Значение k = 10 также включается в подсчёт различных значений k.
def f(n): return n*n*n i = 1 k = int(input()) while f(i) < k: i+=1 if (f(i)-k <= k-f(i-1)): print (i) else: print (i - 1)
var k, i : longint; function f(n: longint) : longint; begin f := n * n * n; end; begin i := 1; readln(k); while f(i) < k do i := i + 1; if (f(i)-k) <= (k-f(i-1)) then writeln(i) else writeln(i - 1); end.
#include <iostream> using namespace std; long int f(long int n) { return n*n*n; } void main() { int i, k; i = 1; cin >> k; while (f(i)<k) i = i + 1; if (f(i) - k <= k - f(i)) cout << i << endl; else cout << i - 1 << endl; }
4) Напишите в ответе наименьшее значение входной переменной k, при котором программа выдаёт тот же ответ, что и при входном значении k = 10.
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)
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 <iostream> using namespace std; long int f(long int n) { return n*n*n; } long int g(long int n) { return 2*n+3; } void main() { int i, k; cin >> k; i = 1; while (f(i) < g(k)) i = i + 1; cout << i << endl; }
5) Определите, количество чисел K, для которых следующая программа выведет такой же результат, что и для K = 45.
def F(n): if n < 2: return 1 else: return 2*F(n-1)+F(n-2) i = 0 k = int(input()) while F(i) < k: i += 1 print(i)
var i, k: integer; function F(n:integer):integer; begin if n < 2 then F:= 1 else F:= 2*F(n-1) + F(n-2); end; begin i := 0; readln(k); while F(i) < k do i:= i + 1; writeln(i); end.
#include <iostream> using namespace std; int F(int n) { if (n < 2) return 1; else return 2*F(n - 1) + F(n - 2); } void main() { int i, k; i = 0; cin >> k; while (F(i) < k) i = i + 1; cout << i << endl; }
6) Определите, количество чисел K, для которых следующая программа выведет такой же результат, что и для K = 53.
def F(n): if n <= 2: return 1 else: return F(n-1) + F(n-2) i = 15 k = int(input()) while i>0 and F(i)>k: i -= 1 print(i)
var i, k: integer; function F(n:integer):integer; begin if n <= 2 then F:= 1 else F:= F(n-1) + F(n-2); end; begin i := 15; readln(k); while (i > 0) and (F(i) > k) do i:= i - 1; writeln(i); end.
#include <iostream> using namespace std; int F(int n) { if (n <= 2) return 1; else return F(n - 1) + F(n - 2); } void main() { int i, k; i = 15; cin >> k; while (i > 0 && F(i) > k) i = i - 1; cout << i << endl; }
7) Определите, количество различных чисел K, для которых следующая программа выведет такой же результат, что и для K = 47. Значение k = 47 также включается в подсчёт различных значений k.
def f(n): return n*(n-1) + 10 i = 0 k = int(input()) while f(i) < k: i += 1 print(i)
var i, k: integer; function f(n:integer):integer; begin f:= n*(n-1) + 10; end; begin i := 0; readln(k); while f(i) < k do i:= i + 1; writeln(i); end.
#include <iostream> using namespace std; int f(int n) { return n*(n - 1) + 10; } void main() { int i, k; i = 0; cin >> k; while (f(i) < k) i = i + 1; cout << i << endl; }
8) Определите, какое значение выведется на экран, после выполнения программы, представленной ниже.
def F(n): if n // 10 == n % 10: return True else: return False k=0 for i in range(10,100): if F(i): k+=1 print(k)
var i, k: integer; function F(n:integer):boolean; begin if n div 10 = n mod 10 then F := True else F := False; end; begin k := 0; for i := 10 to 99 do if F(i) then k := k + 1; writeln(k); end.
#include <iostream> using namespace std; bool F(int n) { if (n / 10 == n % 10) return true; else return false; } void main() { int i, k; k = 0; for (i = 10; i < 100; i++) if (F(i)) k = k + 1; cout << k << endl; }
9) Определите, какое значение выведется на экран, после выполнения программы, представленной ниже.
def F(n): if n // 10 > n % 10: return True else: return False k=0 for i in range(10,100): if F(i): k+=1 print(k)
var i, k: integer; function F(n:integer):boolean; begin if n div 10 > n mod 10 then F := True else F := False; end; begin k := 0; for i := 10 to 99 do if F(i) then k := k + 1; writeln(k); end.
#include <iostream> using namespace std; bool F(int n) { if (n / 10 > n % 10) return true; else return false; } void main() { int i, k; k = 0; for (i = 10; i < 100; i++) if (F(i)) k = k + 1; cout << k << endl; }
10) Определите, какое значение выведется на экран, после выполнения программы, представленной ниже.
def F(n): return n // 10 != n % 10 k=0 for i in range(10,100): if F(i): k+=1 print(k)
var i, k: integer; function F(n:integer):boolean; begin F := n div 10 <> n mod 10; end; begin k := 0; for i := 10 to 99 do if F(i) then k := k + 1; writeln(k); end.
#include <iostream> using namespace std; bool F(int n) { return n / 10 != n % 10; } void main() { int i, k; k = 0; for (i = 10; i < 100; i++) if (F(i)) k = k + 1; cout << k << endl; }
11) Определите, количество чисел K, для которых следующая программа выведет такой же результат, что и для значения K = 22
def F(x): return x**3 + x*x i = 15 k = int(input()) while (i>0) and (F(i)>k): i -= 1 print(i)
var i, k: integer; function F(x:integer):integer; begin F := x*x*x + x*x; end; begin i := 15; readln(k); while (i>0) and (F(i) > k) do i := i - 1; writeln(i); end.
#include <iostream> using namespace std; int F(int x) { return x*x*x + x*x; } void main() { int i, k; i = 15; cin >> k; while (i > 0 && F(i) > k) i = i - 1; cout << i << endl; }
12) Определите, какое число будет напечатано в результате выполнения следующего алгоритма:
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)
var a, b, n, t: 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 if F(t) > 0 then n := n + 1; writeln(n); end.
#include <iostream> using namespace std; int F(int x) { return 16 * (9 - x)*(9 - x) + 127; } void main() { int a, b, n, t; a = -20; b = 20; n = 0; for (t = a; t <= b; t++) if (F(t) > 0) n = n + 1; cout << n << endl; }
13) Определите, какое число будет напечатано в результате выполнения следующего алгоритма:
def F(x): return (x*x-25)*(x*x-25)+15 a = -15 b = 15 M = a R = F(a) for t in range(a,b+1): if F(t) <= R: M = t R = F(t) print(M + 15)
var a, b, M, R, t: integer; function F(x:integer):integer; begin F := (x*x-25)*(x*x-25) + 15; end; begin a := -15; b := 15; M := a; R := F(a); for t:=a to b do if F(t) <= R then begin M := t; R := F(t); end; writeln(M + 15); end.
#include <iostream> using namespace std; int F(int x) { return (x*x - 25)*(x*x - 25) + 15; } void main() { int a, b, M, R, t; a = -15; b = 15; M = a; R = F(a); for (t = a; t <= b; t++) if (F(t) <= R) { M = t; R = F(t); } cout << M + 15 << endl; }
14) Определите, какое число будет напечатано в результате выполнения следующего алгоритма:
def F(x): return 4*(x-5)*(x+3) a = -20 b = 0 M = a R = F(a) for t in range(a,b+1): if F(t) < R: M = t R = F(t) print(M)
var a, b, M, R, t: integer; function F(x:integer):integer; begin F := 4*(x - 5)*(x + 3); end; begin a := -20; b := 0; M := a; R := F(a); for t := a to b do if F(t) < R then begin M := t; R := F(t); end; writeln(M); end.
#include <iostream> using namespace std; int F(int x) { return 4 * (x - 5)*(x + 3); } void main() { int a, b, M, R, t; a = -20; b = 0; M = a; R = F(a); for (t = a; t <= b; t++) if (F(t) < R) { M = t; R = F(t); } cout << M << endl; }
15) Укажите наименьшее значение входной переменной t, при котором программа выдаёт тот же ответ, что и при входном значении t=24.
def f(n): return n*n def g(k): return 4*k + 3 t = int(input()) i = 1 while f(i) < g(t): i+=1 print(i)
var t, i : longint; function f(n: longint): longint; begin f := n * n; end; function g(k: longint): longint; begin g := 4*k + 3; end; begin readln(t); i := 1; while f(i) < g(t) do i := i + 1; writeln(i); end.
#include <iostream> using namespace std; long int f(long int n) { return n*n; } long int g(long int k) { return 4*k+3; } void main() { int i, t; cin >> t; i = 1; while (f(i) < g(t)) i = i + 1; cout << i << endl; }
16) Укажите наименьшее значение входной переменной t, при котором программа выдаёт тот же ответ, что и при входном значении t=15.
def f(n): if n < 3: return 1 else: return f(n-1) + f(n-2) def g(k): return 3*k + 5 t = int(input()) i = 1 while f(i) < g(t): i+=1 print(i)
var i, t: integer; function f(n:integer):integer; begin if n < 3 then f:= 1 else f:= f(n-1) + f(n-2); end; function g(k:integer):integer; begin g:= 3*k + 5; end; begin readln(t); i := 1; while f(i) < g(t) do i:= i + 1; writeln(i); end.
#include <iostream> using namespace std; int f(int n) { if (n < 3) return 1; else return f(n - 1) + f(n - 2); } int g(int k) { return 3 * k + 5; } void main() { int i, t; i = 1; cin >> t; while (f(i) < g(t)) i = i + 1; cout << i << endl; }
17) Укажите число, равное количеству различных значений входной переменной k, при которых приведённая ниже программа выводит тот же ответ, что и при входном значении k = 11. Значение k = 11 также включается в подсчёт различных значений k.
def f(n): return n*n i = 1 k = int(input()) while f(i) < k: i+=1 if (f(i)-k) >= (k-f(i-1)): print (i) else: print (i + 1)
var k, i : longint; function f(n: longint) : longint; begin f := n * n; end; begin i := 1; readln(k); while f(i) < k do i := i + 1; if (f(i)-k) >= (k-f(i-1)) then writeln(i) else writeln(i + 1); end.
#include <iostream> using namespace std; long int f(long int n) { return n*n; } void main() { int i, k; i = 1; cin >> k; while (f(i) < k) i = i + 1; if (f(i) - k >= k - f(i)) cout << i << endl; else cout << i + 1 << endl; }
18) Укажите наибольшее значение входной переменной k, при котором программа выдаёт тот же ответ, что и при входном значении k = 15.
19) Укажите количество различных значений входной переменной k, при которых приведённая ниже программа выводит тот же ответ, что и при входном значении k = 33. Значение k = 33 также включается в подсчёт различных значений k.
Задания взяты из базы данных ФИПИ, сайта К.Полякова или придуманы мною