1. Исполнитель Редактор получает на вход строку цифр и преобразовывает её. Редактор может выполнять две команды, в обеих командах v и w обозначают цепочки цифр.
А) заменить (v, w).
Эта команда заменяет в строке первое слева вхождение цепочки v на цепочку w. Например, выполнение команды
заменить (111, 27)преобразует строку 05111150 в строку 0527150.
Если в строке нет вхождений цепочки v, то выполнение команды
заменить (v, w) не меняет эту строку.
Б) нашлось (v).
Эта команда проверяет, встречается ли цепочка v в строке исполнителя Редактор. Если она встречается, то команда возвращает логическое значение «истина», в противном случае возвращает значение «ложь». Строка исполнителя при этом не изменяется.
ЦиклПОКА условие
последовательность команд
КОНЕЦ ПОКА
выполняется, пока условие истинно.
В конструкции
ЕСЛИ условиеТО команда1
ИНАЧЕ команда2
КОНЕЦ ЕСЛИ
выполняется команда1 (если условие истинно) или команда2 (если условие ложно).
Какая строка получится в результате применения приведённой ниже программы к строке, состоящей из 69 идущих подряд цифр 8? В ответе запишите полученную строку.
НАЧАЛО
ПОКА нашлось (3333) ИЛИ нашлось (8888)
ЕСЛИ нашлось (3333)ТО заменить (3333, 88)
ИНАЧЕ заменить (8888, 33)
КОНЕЦ ЕСЛИ
КОНЕЦ ПОКА
КОНЕЦ
2. Система команд исполнителя РОБОТ, «живущего» в прямоугольном лабиринте на клетчатой плоскости, включает в себя 4 команды-приказа и 4 команды проверки условия. Команды-приказы: вверх, вниз, влево, вправо. При выполнении любой из этих команд РОБОТ перемещается на одну клетку соответственно: вверх ↑, вниз ↓, влево ←, вправо →. Если РОБОТ начнёт движение в сторону находящейся рядом с ним стены, то он разрушится, и программа прервётся.
Другие 4 команды проверяют истинность условия отсутствия стены у каждой стороны той клетки, где находится РОБОТ: сверху свободно, снизу свободно, слева свободно, справа свободно.
Цикл
ПОКА условие
последовательность команд
КОНЕЦ ПОКА
выполняется, пока условие истинно. В конструкции
ЕСЛИ условие
ТО команда1
ИНАЧЕ команда2
КОНЕЦ ЕСЛИ
выполняется команда1 (если условие истинно) или команда2 (если условие ложно).
Сколько клеток лабиринта соответствуют требованию, что, начав движение в ней и выполнив предложенную программу, РОБОТ уцелеет и остановится в закрашенной клетке (клетка F6)?
НАЧАЛО
ПОКА снизу свободно ИЛИ справа свободно
ПОКА снизу свободно
вниз
КОНЕЦ ПОКА
вправо
КОНЕЦ ПОКА
КОНЕЦ
3. Система команд исполнителя РОБОТ, «живущего» в прямоугольном лабиринте на клетчатой плоскости, включает в себя 4 команды-приказа и 4 команды проверки условия.
Команды-приказы:
вверх | вниз | влево | вправо |
При выполнении любой из этих команд РОБОТ перемещается на одну клетку соответственно: вверх ↑, вниз ↓, влево ←, вправо →.
Если РОБОТ начнёт движение в сторону находящейся рядом с ним стены, то он разрушится, и программа прервётся.
Другие 4 команды проверяют истинность условия отсутствия стены у каждой стороны той клетки, где находится РОБОТ:
сверху свободно | снизу свободно | слева свободно | справа свободно |
Цикл
ПОКА < условие >
последовательность команд
КОНЕЦ ПОКА
выполняется, пока условие истинно.
В конструкции
ЕСЛИ < условие >
ТО команда1
ИНАЧЕ команда2
КОНЕЦ ЕСЛИ
выполняется команда1 (если условие истинно) или команда2 (если условие ложно).Сколько клеток лабиринта соответствуют требованию, что, начав движение в этой клетке и выполнив предложенную программу, Робот уцелеет и остановится в закрашенной клетке (клетка А6)?
НАЧАЛО
ПОКА < слева свободно ИЛИ снизу свободно >
ЕСЛИ < снизу свободно >
ТО вниз
ИНАЧЕ влево
КОНЕЦ ЕСЛИ
КОНЕЦ ПОКА
КОНЕЦ
4. Система команд исполнителя РОБОТ, «живущего» в прямоугольном лабиринте на клетчатой плоскости, включает в себя 4 команды-приказа и 4 команды проверки условия.
Команды-приказы:
вверх | вниз | влево | вправо |
При выполнении любой из этих команд РОБОТ перемещается на одну клетку соответственно: вверх ↑, вниз ↓, влево ←, вправо →.
Если РОБОТ начнёт движение в сторону находящейся рядом с ним стены, то он разрушится, и программа прервётся.
Другие 4 команды проверяют истинность условия отсутствия стены у каждой стороны той клетки, где находится РОБОТ:
сверху свободно | снизу свободно | слева свободно | справа свободно |
Цикл
ПОКА условие
последовательность командКОНЕЦ ПОКА
выполняется, пока условие истинно. В конструкции
ЕСЛИ условие
ТО команда1
ИНАЧЕ команда2
КОНЕЦ ЕСЛИ
выполняется команда1 (если условие истинно) или команда2 (если условие ложно).
Сколько клеток лабиринта соответствуют требованию, что, начав движение в ней и выполнив предложенную программу, РОБОТ уцелеет и остановится в закрашенной клетке (клетка A6)?
НАЧАЛО
ПОКА снизу свободно ИЛИ слева свободно
ЕСЛИ снизу свободно
ТО вниз
ИНАЧЕ влево
КОНЕЦ ЕСЛИ
КОНЕЦ ПОКА
КОНЕЦ
5.
Система команд исполнителя РОБОТ, «живущего» в прямоугольном лабиринте на клетчатой плоскости, включает в себя 4 команды-приказа и 4 команды проверки условия. Команды-приказы: вверх, вниз, влево, вправо. При выполнении любой из этих команд РОБОТ перемещается на одну клетку соответственно: вверх ↑, вниз ↓, влево ←, вправо →. Если РОБОТ начнёт движение в сторону находящейся рядом с ним стены, то он разрушится, и программа прервётся.
Другие 4 команды проверяют истинность условия отсутствия стены у каждой стороны той клетки, где находится РОБОТ: сверху свободно, снизу свободно, слева свободно, справа свободно. Цикл
ПОКА условие
последовательность команд
КОНЕЦ ПОКА
выполняется, пока условие истинно. В конструкции
ЕСЛИ условие
ТО команда1
ИНАЧЕ команда2
КОНЕЦ ЕСЛИ
выполняется команда1 (если условие истинно) или команда2 (если условие ложно). В конструкциях ПОКА и ЕСЛИ условие может содержать команды проверки, а также слова И, ИЛИ, НЕ.
Сколько клеток лабиринта соответствуют требованию, что, начав движение в ней и выполнив предложенную программу, РОБОТ уцелеет и остановится в закрашенной клетке (клетка F6)?
НАЧАЛО
ПОКА <снизу свободно ИЛИ справа свободно>
ПОКА <справа свободно>
вправо
КОНЕЦ ПОКА
ЕСЛИ <снизу свободно>
ТО вниз
КОНЕЦ ЕСЛИ
КОНЕЦ ПОКА
КОНЕЦ
6. Ниже записана программа. Получив на вход число x , эта программа печатает два числа, L и M. Укажите наибольшее из таких чисел x, при вводе которых алгоритм печатает сначала 3, а потом 7.
var x, L, M: integer;
begin
readln(x);
L:=0; M:=0;
while x > 0 do begin
L:=L+1;
if M < x then begin
M:=x mod 10;
end;
x:= x div 10;
end;
writeln(L); write(M);
end.
7. Ниже на четырёх языках записан алгоритм. Получив на вход число x, этот алгоритм печатает два числа a и b. Укажите такое наименьшее число x, что при вводе x алгоритм печатает сначала 2, а потом 0.
Бейсик | Паскаль |
---|---|
DIM X, A, B AS INTEGER
INPUT X A = 0: B = 1 WHILE X > 0 A = A + 1 B = B*(X MOD 10) X = X\10 WEND PRINT A PRINT B |
var x, a, b: integer;
begin readln(x); a := 0; b := 1; while x > 0 do begin a := a+1; b := b*(x mod 10); x := x div 10; end; writeln(a); write(b); end. |
Си | Алгоритмический |
#include <stdio.h>
void main() { int x, a, b; scanf("%d", &x); a = 0; b = 1; while (x > 0){ a = a+1; b = b*(x%10); x = x/10; } printf("%d\n%d", a, b); } |
алг
нач цел x, a, b ввод x a := 0; b := 1 нц пока x > 0 a := a+1 b := b*mod(x,10) x := div(x,10) кц вывод a, нс, b кон |
8. Ниже на четырёх языках записан алгоритм. Получив на вход число x, этот алгоритм печатает два числа: a и b. Укажите наименьшее из таких чисел x, при вводе которых алгоритм печатает сначала 9, а потом 7.
Бейсик | Паскаль |
---|---|
DIM X, A, B, C AS INTEGER
INPUT X A = 0: B = 0 WHILE X > 0 C = X MOD 10 A = A + C IF C > B THEN B = C X = X \ 10 WEND PRINT A PRINT B |
var x, a, b, c: integer;
begin readln(x); a := 0; b := 0; while x>0 do begin c := x mod 10; a := a+c; if c>b then b := c; x := x div 10; end; writeln(a); write(b); end. |
Си | Алгоритмический |
#include <stdio.h>
void main() { int x, a, b, c; scanf("%d", &x); a = 0; b = 0; while (x>0) { c = x%10; a = a+c; if (c>b) b = c; x = x/10; } printf("%d\n%d", a, b); } |
алг
нач цел x, a, b, c ввод x a := 0; b := 0 нц пока x>0 c := mod(x,10) a := a+c если c>b то b := c все x := div(x,10) кц вывод a, нс, b кон |
9. Ниже приведены тексты одной и той же программы, записанные на четырех языках программирования. Что будет напечатано в результате выполнения этой программы
Бейсик | Паскаль |
---|---|
Module Task
Sub Main() Dim L As Integer = 4 Dim R(4) As Integer Dim N As Integer R.SetValue(5, 1) R.SetValue(9, 2) R.SetValue(6, 3) R.SetValue(2, 4) Pr1(L, R) N = F1(L, R) Console.Write(N) Console.WriteLine() End Sub Sub Pr1(ByVal L As Integer, ByRef R As Array) Dim i, n, t As Integer For i = 1 To L t = (R.GetValue(i) \ 2) * 4 R.SetValue(t Mod 5, i) Next End Sub Function F1(ByVal L As Integer, ByRef R As Array) As Integer Dim N, i, T N = 1 T = 1 For i = 1 To L N = N * R.GetValue(i) + T T = T + 2 Next Return N End Function End Module |
Program Task;
Uses crt; const L = 4; type atype = array [1..L] of integer; Var R : atype; N, p : integer; Procedure Pr1(L : integer; var R : atype ); var i,n,t : integer; begin for i:=1 to L do begin t:=(R[i] div 2)*4; R[i]:=t mod 5; end; end; Function F1 (L : integer; R: atype) : integer; Var N, i, T : integer; begin N:=1; T:=1; for i:=1 to L do begin N:=N*R[i]+T; T:=T+2; end; F1:=N; end; BEGIN R[1]:=5; R[2]:=9; R[3]:=6; R[4]:=2; Pr1(L, R); N:=F1(L,R); write(N); writeln; END. |
Си | Алгоритмический язык |
#include <stdlib.h>
void Pr1(int L, int* R) { int i, n, t; for ( i=0; i < L; i++ ) { t = (R[i] / 2) *4; R[i] = t % 5; } } int F1(int L, int* R) { int N, i, T; N = 1; T = 1; for ( i=0; i < L; i++ ) { N = N *R[i]+T; T = T+2; } return N; } void main() { int L = 4; int* R = (int*)calloc(L, sizeof(int)); int N; R[1] = 5; R[2] = 9; R[3] = 6; R[4] = 2; Pr1(L, R); N = F1(L, R); printf("%d\n", N); free(R); } |
алг Задача
нач цел L=4; целтаб R[1:L]; цел N R[1]:=5; R[2]:=9; R[3]:=6; R[4]:=2; Pr1(L, R) N:=F1(L, R) вывод N, нс кон алг Pr1(цел L, аргрез целтаб R[1:L]) нач цел i, n, t нц для i от 1 до L t:=div(R[i],2)*4 R[i]:=mod(t, 5) кц кон алг цел F1(цел L, аргрез целтаб R[1:L]) нач цел N, i, T N:=1 T:=1 нц для i от 1 до L N:=N*R[i]+T T:=T*3 кц знач:= N кон |
10. Ниже на пяти языках записан алгоритм. Получив на вход число x, этот алгоритм печатает два числа a и b. Укажите наибольшее из таких чисел x, при вводе которого алгоритм печатает сначала 2, а потом 5.
Бейсик | Python |
---|---|
DIM X, A, B AS INTEGER
INPUT X A = 0: B = 1 WHILE X > 0 A = A+1 B = B * (X MOD 100) X = X\100 WEND PRINT A PRINT B |
x = int(input())
a, b = 0, 1 while x > 0: a = a + 1 b = b * x%100 x = x//100 print(a) print(b) |
Паскаль | Алгоритмический язык |
var x, a, b: integer;
begin readln(x); a := 0; b := 1; while x > 0 do begin a := a+1; b := b*(x mod 100); x := x div 100; end; writeln(a); write(b); end. |
алг
нач цел x, a, b ввод x a:=0; b:=1 нц пока x > 0 a := a+1 b := b*mod(x,100) x := div(x,100) кц вывод a, нс, b кон |
Си | |
#include <stdio.h>
void main() { int x, a, b; scanf("%d", &x); a = 0; b = 1; while (x > 0) { a = a+1; b = b * (x%100); x = x/100; } printf("%d\n%d", a, b); } |
11. Напишите в ответе число, которое будет напечатано в результате выполнения следующего алгоритма (для Вашего удобства алгоритм представлен на четырёх языках).
Бейсик | Паскаль |
---|---|
DIM А, В, Т, М, R AS INTEGER
А = -13: В = 13 М = A: R=F(А) FOR Т = А ТО В IF F(Т) < R THEN М = Т R = F (Т) END IF NEXT Т PRINT M+18 FUNCTION F(x) F = (x*x-4)*(x*x-4)+11 END FUNCTION |
var a,b,t,M,R :integer;
Function F(x:integer):integer; begin F := (x*x-4)*(x*x-4)+11 end; begin a := -13; b := 13; 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+18) end. |
Си | Алгоритмический |
#include <stdio.h>
int F(int x) { return (x*x-4)*(x*x-4) +11; } void main() { int a, b, t, M, R; a = -13; b = 13; M = a; R = F (a); for (t = a; t <= b; t++) { if (F(t) < R) { M = t; R = F(t); } } printf("%d", M+18); } |
алг
нач цел a, b, t, М, R а := -13; b := 13
М := a;
R := F(а)
нц для t от а до bесли F(t) < R то М := t;
R := F(t)
всекц вывод М+18 кон алг цел Р(цел х) нач знач := (х*х-4)* (х*х-4)+11 кон |
12. При каком наибольшем значении входной переменной k программа выдаёт тот же ответ, что и при входном значении k = 64? Для Вашего удобства программа приведена на пяти языках программирования.
Бейсик | Python |
---|---|
DIM K, I AS LONG
INPUT K I = 12 WHILE I > 0 AND F(I) >= K I = I - 1 WEND PRINT I FUNCTION F(N) F = N * N - 20 END FUNCTION |
def f(n):
return n * n - 20 k = int(input()) i = 12 while i > 0 and f(i) >= k: i = i - 1 print(i) |
Алгоритмический язык | Паскаль |
алг
нач цел i, k ввод k i := 12 нц пока i > 0 и f(i) >= k i := i - 1 кц вывод i кон алг цел f(цел n) нач знач := n * n - 20 кон |
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>
long f(long n) { return n * n - 20; } int main() { long k, i; scanf("%ld", &k); i = 12; while (i > 0 && f(i) >= k) i––; printf("%ld", i); return 0; } |
13. Определите, какое число будет напечатано в результате выполнения следующего алгоритма:
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.
14. Напишите в ответе число, которое будет напечатано в результате выполнения следующего алгоритма (для Вашего удобства алгоритм представлен на четырёх языках).
Бейсик | Паскаль |
---|---|
DIM А, В, Т, М, R AS INTEGER
А = -13: В = 13 М = A: R = F (А) FOR Т = А ТО В IF F(Т) < R THEN М = Т R = F (Т) END IF NEXT Т PRINT M+7 FUNCTION F(x) F = (x*x-9)*(x*x-9)+5 END FUNCTION |
var a,b,t,M,R :integer;
Function F(x:integer):integer; begin F := (x*x-9)*(x*x-9)+5 end; begin a := -13; b := 13; 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+7) end. |
Си | Алгоритмический |
#include <stdio.h>
int F(int x) { return (x*x-9)*(x*x-9) +5; } void main() { int a, b, t, M, R; a = -13; b = 13; M = a; R = F (a); for (t = a; t <= b; t++) { if (F(t) < R) { M = t; R = F(t); } } printf("%d", M+7); } |
алг
нач цел a, b, t, М, R а := -13; b := 13
М := a;
R := F(а)
нц для t от а до bесли F(t) < R то М := t;
R := F(t)
всекц вывод М+7 кон алг цел Р(цел х) нач знач := (х*х-9)* (х*х-9)+5 кон |
15. Определите, какое число будет напечатано в результате выполнения следующего алгоритма (для Вашего удобства алгоритм представлен на четырёх языках):
Бейсик | Паскаль |
---|---|
DIM A, B, T, M, R AS INTEGER
A = -7: B = 25 M = A: R = F(A) FOR T = A TO B IF F(T) > R THEN M = T R = F(T) ENDIF NEXT T PRINT R FUNCTION F(x) F = 281 - 2 * (17 + x) * (17 + x); END FUNCTION |
var a,b,t,M,R :integer;
Function F(x:integer):integer; begin F : = 281 - 2 * (17 + x) * (17 + x); end; begin a : = -7; 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; write(R); end. |
Си | Алгоритмический язык |
#include<stdio.h>
int F(int x) { return 281 - 2 * (17 + x) * (17 + x); } void main() { int a, b, t, M, R; a = -7; b = 25; M = a; R = F(a); for (t = a; t <= b; t++){ if (F(t) > R) { M = t; R = F(t); } } printf("%d", R); } |
алг
нач цел a, b, t, R, M a : = -7; b : = 25
M : = a; R : = F(a)
нц для t от a до bесли F(t) > R то
M : = t; R : = F(t)
всекц вывод R кон алг цел F(цел x) нач знач : = 281 - 2 * (17 + x) * (17 + x) кон |
16. A, B и C – целые числа, для которых истинно высказывание:
(C < A ∨ C < B) ∧ ¬(C+1 < A) ∧ ¬(C+1 < B)
Чему равно C, если A=45 и B=18?
17. Сколько существует различных наборов значений логических переменных x1, x2, … x10, которые удовлетворяют всем перечисленным ниже условиям:
¬((x1 ∧ ¬x2 ∧ x3) ∨ (¬x1 ∧x2∧ x3) ∨ (x1 ∧ ¬x2 ∧ ¬x3)) = 1,
¬((x2 ∧ ¬x3 ∧ x4) ∨ (¬x2 ∧x3∧ x4) ∨ (x2 ∧ ¬x3 ∧ ¬x4)) = 1,
...
¬((x8 ∧ ¬x9 ∧ x10) ∨ (¬x8 ∧x9∧ x10) ∨ (x8 ∧ ¬x9 ∧ ¬x10)) = 1.
В ответе не нужно перечислять все различные наборы значений переменных x1, x2, … x10, при которых выполнена данная система равенств. В качестве ответа Вам нужно указать количество таких наборов.
18. Каково наибольшее целое положительное число X, при котором ложно высказывание:
(8•X - 6 < 75) → (X•(X-1)> 65)
19. Сколько существует различных наборов значений логических переменных x1, x2, ... x9, y1, y2, ... y9, которые удовлетворяют всем перечисленным ниже условиям?
(¬ (x1 ≡ y1)) ≡ (x2 ≡ y2)
(¬ (x2 ≡ y2)) ≡ (x3 ≡ y3)
…
(¬ (x8 ≡ y8)) ≡ (x9 ≡ y9)
В ответе не нужно перечислять все различные наборы значений переменных x1, x2, ... x9, y1, y2, ... y9, при которых выполнена данная система равенств. В качестве ответа Вам нужно указать количество таких наборов.
20. Сколько существует различных наборов значений логических переменных x1, x2, ... x11, которые удовлетворяют всем перечисленным ниже условиям?
¬(x1 ≡ x2) ∧ ( (x1 ∧ ¬x3) ∨ (¬x1 ∧ x3) ) = 0
¬(x2 ≡ x3) ∧ ( (x2 ∧ ¬x4) ∨ (¬x2 ∧ x4) ) = 0
...
¬(x9 ≡ x10) ∧ ( (x9 ∧ ¬x11) ∨ (¬x9 ∧ x11) ) = 0
В ответе не нужно перечислять все различные наборы значений переменных x1, x2, … x11 при которых выполнена данная система равенств. В качестве ответа Вам нужно указать количество таких наборов.
Комментариев нет:
Отправить комментарий