адание 1 № 3367 (решено верно)

Элементы двухмерного массива A размером 10x10 первоначально были равны 1. Затем значения некоторых из них меняют с помощью следующего фрагмента программы:

for n:=1 to 4 do
for k:=1 to n+1 do begin
A[n,k]:=A[n,k]-1;
A[n,k+1]:=A[n,k]-1;
end;

Сколько элементов массива в результате будут равны 0?

1) 0
2) 4
3) 8
4) 16

Пояснение.
Итак, идем по программе:
от n=1 до 4 выполняется
от k=1 до n+1 выполняется

(n=1, k=1) из ячейки вычитают 1 и ячейка принимает значение 0
ячейка, которая будет следовать дальше по счетчику, принимает значение
данной минус 1, т е значение -1.

(n=1, k=2) Дальше работаем с этой ячейкой и ее значение получается -2, Так что далее получим, что только ячейки с k=1, а n:=1 to 4 будут равны 0, т е только 4 ячейки.

Правильный ответ указан под номером 2.


Ваш ответ: 2. Правильный ответ: 2

 

Комментировать

 

Задание 2 № 3378 (решено верно)

Значения элементов двухмерного массива A[1..10,1..10] сначала равны 4. Затем выполняется следующий фрагмент программы:

for i:=1 to 4 do
for j:=1 to 5 do begin
A[i,j]:=A[i,j]+4;
A[j,i]:=A[j,i]+5;
end;

Сколько элементов массива будут равны 9?

1) 20
2) 16
3) 5
4) 4

Пояснение.
Мы имеем матрицу размером 10x10. Операция A[i,j] : = A[i,j]+4 при заданных i и j увеличивает на 4 элементы первых четырёх строк и первых пяти столбцов.

Операция A[j,i] : = A[j,i]+5 при заданных i и j увеличивает на 5 элементы первых пяти строк и первых четырёх столбцов.

Поскольку все элементы массива изначально равны 4, то после первого оператора 4 * 5 = 20 элементов будут равны 8, а после второго – 16 элементов будут равны 13, 4 элемента будут равны 8 и 4 элемента приобретут значение 9.

Нарисуем для наглядности изменяющийся фрагмент числовой таблицы:

4 + 4 + 5 4 + 4 + 5 4 + 4 + 5 4 + 4 + 5 4 + 4
4 + 4 + 5 4 + 4 + 5 4 + 4 + 5 4 + 4 + 5 4 + 4
4 + 4 + 5 4 + 4 + 5 4 + 4 + 5 4 + 4 + 5 4 + 4
4 + 4 + 5 4 + 4 + 5 4 + 4 + 5 4 + 4 + 5 4 + 4
4 + 5 4 + 5 4 + 5 4 + 5

 

Правильный ответ указан под номером 4.


Ваш ответ: 4. Правильный ответ: 4

 

Комментировать

 

Задание 3 № 3354 (решено верно)

В программе описан одномерный целочисленный массив A с индексами от 0 до 10. Ниже представлен фрагмент этой программы, в котором значения элементов массива сначала задаются, а затем меняются.

A[0] : = 1;
for i : = 1 to 10 do
A[i] : = 2+A[i-1];
for i : = 0 to 5 do
A[10-i] : = A[i]-1;

Чему будут равны элементы этого массива?

1) 1 3 5 7 9 10 8 6 4 2 0
2) 1 3 5 7 9 11 13 15 17 19 21
3) 1 3 5 7 9 11 9 7 5 3 1
4) 1 3 5 7 9 11 8 6 4 2 0

Пояснение.
Первый цикл, заполняем массив:
i=0: a[0]=1,
i=1: a[1]=3,
i=2: a[2]=5,
i=3: a[3]=7,
...
i=10: a[10]=21.

Второй цикл, меняем значения последних пяти элементов:
i=0: a[10]=a[0]-1 = 0,
i=1: a[9]=a[1]-1 = 2,
...
i=5: a[5]=a[5]-1 = 10,

Поэтому в результате выполнения программы элементы массива будут равны: 1, 3, 5, 7, 9, 10, 8, 6, 4, 2, 0.

Правильный ответ указан под номером 1.


Ваш ответ: 1. Правильный ответ: 1

 

Комментировать

 

Задание 4 № 3370 (решено верно)

В программе описан одномерный целочисленный массив с индексами от 0 до 10 и целочисленная переменная i. В приведенном ниже фрагменте программы массив сначала заполняется, а потом изменяется:

for i:=0 to 10 do A[i]:=i;
for i:=0 to 9 do begin
A[i]:=A[i+1];
end;

Чему будут равны элементы этого массива?

1) 10 0 1 2 3 4 5 6 7 8 9
2) 1 2 3 4 5 6 7 8 9 10 10
3) 0 0 1 2 3 4 5 6 7 8 9
4) 1 2 3 4 5 6 7 8 9 10 0

Пояснение.
Идем по программе:
от 0 до 10 выполняем A[i]:=i, т. е. 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10;

от 0 до 9 выполняем A[i]:=A[i+1], т. е. значения ячеек смещаются влево на одну ячейку, кроме последней, так что 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 10.

Правильный ответ указан под номером 2.


Ваш ответ: 2. Правильный ответ: 2

 

Комментировать

 

Задание 5 № 507 (решено верно)

Определите значение переменной после выполнения следующего фрагмента программы:

 

Бэйсик Алгоритмический язык
а = –3 b = a + 3 b = 1 – b c = –b + 3 * a a : = –3 ; b : = a + 3 ; b : = 1 – b ; c : = –b + 3 * a ;
Си Паскаль
а = –3 ; b = a + 3 ; b = 1 – b ; c = –b + 3 * a ; a : = –3 ; b : = a + 3 ; b : = 1 – b ; c : = –b + 3 * a ;

 


Пояснение.
a : = –3
b : = a + 3 = 0
b : = 1 – b = 1
c : = –b + 3 * a = –1 – 9 = –10


Ваш ответ: -10. Правильный ответ: -10

 

Комментировать

 

Задание 6 № 4586 (решено неверно или не решено)

У исполнителя Отличник две команды, которым присвоены номера:

Прибавь 1

Умножь на 5

Выполняя первую из них, Отличник прибавляет к числу на экране 1, а выполняя вторую, умножает его на 5.

Начало формы


Запишите порядок команд в программе, которая из числа 2 получает число 101 и содержит не более 5 команд. Указывайте лишь номера команд.


Например, программа 1211 – это программа
прибавь 1

умножь на 5

прибавь 1

прибавь 1

Эта программа преобразует число 2 в число 17.

 

Пояснение.
Решим задачу от обратного, а потом запишем полученные команды справа налево.
Если число не делится на 5, тогда получено через команду 1, если делится, то через команду 2.

101 = 100 + 1 (команда 1),
100 = 20 * 5 (команда 2),
20 = 4 * 5 (команда 2),
4 = 3 + 1 (команда 1),
3 = 2 + 1 (команда 1).

Окончательный ответ: 11221.


Ваш ответ: нет ответа. Правильный ответ: 11221

Комментировать

 

Конец формы

Задание 7 № 3594 (решено верно)

Определите значение целочисленных переменных a и b после выполнения фрагмента программы:
a := 42;
b := 14;
a := a div b;
b := a*b;
a := b div a;


Пояснение.
Операция div делит число с отбрасыванием остатка.
Операция mod оставляет только остаток от деления числа.
a := 42;
b := 14;
a := a div b = 3;
b := a*b = 3*14 = 42;
a := b div a = 14;


Ваш ответ: 14,42. Правильный ответ: 14,42

 

Комментировать

 

Задание 8 № 3241 (решено верно)

Определите, что будет напечатано в результате работы следующего фрагмента программы:

var n, s: integer;
begin
n := 1;
s := 0;
while n <= 101 do begin
s := s + 7;
n := n + 1
end;
write(s)
end.


Пояснение.
Цикл while выполняется до тех пор, пока истинно условие n <= 101, т. е. переменная n определяет, сколько раз выполнится цикл. Следовательно, формульно s можно задать как функцию n так:

, где а

, так как последняя операция, выполненная в цикле: n := 101 + 1.

Следовательно


Ваш ответ: 707. Правильный ответ: 707

 

Комментировать

 

Задание 9 № 3245 (решено верно)

Определите, что будет напечатано в результате работы следующего фрагмента программы:

var n, s: integer;
begin
n := 3;
s := 0;
while n <= 7 do begin
s := s + n;
n := n + 1
end;
write(s)
end.


Пояснение.
Цикл while выполняется до тех пор, пока истинно условие n <= 7, т. е. переменная n определяет, сколько раз выполнится цикл.

Запишем последовательно значения s и n:

s 0 3 7 12 18 25
n 3 4 5 6 7 8


Цикл выполнится пять раз (так как действие n := n + 1 стоит в конце цикла, следовательно, для n=8 действие s := s + n не будет выполняться).


Ваш ответ: 25. Правильный ответ: 25

 

Комментировать

 

Задание 10 № 3772 (решено верно)

Определите, что будет напечатано в результате работы следующего фрагмента программы:
var k, s: integer;
begin
s:=3;
k:=1;
while k < 25 do begin
s:=s+k;
k:=k+2;
end;
write(s);
end.


Пояснение.
Цикл while выполняется до тех пор, пока истинно условие k < 13, т. е. переменная k определяет, сколько раз выполнится цикл.

Аккуратно выпишем все s и k:

s 3 4 7 12 19 28 39 52 67 84 103 124 147
k 1 3 5 7 9 11 13 15 17 19 21 23 25

 


Ваш ответ: 147. Правильный ответ: 147