timastic
13.04.2022 11:02

В первую секунду на клетчатом поле загорается одна клетка. Во вторую секунду – все клетки, которые имеют общую сторону с ней. В третью – все клетки, которые имеют общую сторону с уже горящими. И так далее.
Пользователь вводит k – количество клеток. Программа определяет, сколько секунд придётся ждать, чтобы на поле загорелось как минимум k клеток.

Например, для k=9 ответом будет 3 секунды. паскаль

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
amir3009
25.05.2022 07:47

Какой оператор цикла желательно использовать, если известно число повторений тела цикла?

repeat <оператор1, …>until <условие>

while <условие>do <оператор>

for <параметр>:= <начальное значение>to<конечное значение> do<оператор>

2. Используется оператор for i:= -10 to 10 do…

После завершения выполнения тела цикла i = 10

3. Цикл в фрагменте программы

p:=1;

repeat

p:=p*0.1

until p>0.1;

будет исполнен:

1 раз

2 раза

бесконечное число раз

0 раз

3 раза

4. Цикл в фрагменте программы

a:=1;

b:=1;

while a+b<8 do

begin

a:=a+1; b:=b+2

end;

выполнится:

0 раз

3 раза

2 раза

1 раз

бесконечное число раз

5. Какой оператор цикла желательно использовать для записи алгоритмической конструкции, изображённой на схеме?

НЕТ СХЕМЫ. ОТВЕТИТЬ НА ВОПРОС НЕВОЗМОЖНО.

while <условие> do <оператор>

for <параметр>:= <начальное значение> to <конечное значение> do <оператор>

repeat <оператор1, …> until <условие>

6. Какой оператор цикла желательно использовать, если известно условие выхода из цикла?

repeat <оператор1, …> until <условие>

for <параметр>:= <начальное значение> to <конечное значение> do <оператор>

while <условие> do <оператор>

7. Определите, какое значение будет выведено на экран в результате выполнения приведенной ниже последовательности операторов:

a:=1; b:=1;

while a<=32 do a:=a*2; b:=b*a;  //Обратите внимание! Нет begin end.

write (b)

32

256

64

128

8. Используется оператор for i:= -5 to 9 do…

При первом выполнении тела цикла i = -5

9. Чему равно значение переменной s после выполнения следующего фрагмента программы

Фрагмента программы нет! Задание решить нельзя!

0,0(0 оценок)
Ответ:
ostlena50
13.05.2020 11:45
//PascalABC.NET
//Версия 3.3, сборка 1634 (14.02.2018)

begin
  var (cost, t, k) := (Arr(15, 70, 125, 230, 440), Arr(1, 5, 10, 20, 60), new integer[5]);
  var n := ReadInteger('n->');
  for var i := 4 downto 0 do
  begin
    k[i] := n div t[i];n := n mod t[i];
  end; 
  if k[0] * cost[0] >= cost[1] then begin k[0] := 0;inc(k[1]); end;
  if k[0] * cost[0] + k[1] * cost[1] >= cost[2] then 
  begin
    k[0] := 0;k[1] := 0;inc(k[2]); 
  end;
  if k[0] * cost[0] + k[1] * cost[1] + k[2] * cost[2] >= cost[3] then 
  begin
    k[0] := 0;k[1] := 0;k[2] := 0;inc(k[3]);
  end;
  if k[0] * cost[0] + k[1] * cost[1] + k[2] * cost[2] + k[3] * cost[3] >= cost[4] then 
  begin
    k[0] := 0;k[1] := 0;k[2] := 0;k[3] := 0;inc(k[4]); 
  end;
  
  for var i := 0 to 4 do WritelnFormat('{0} билет(ов)- {1} штук(а)', t[i], k[i]);
end.

Пример(1):
n-> 37
1 билет(ов)- 0 штук(а)
5 билет(ов)- 0 штук(а)
10 билет(ов)- 0 штук(а)
20 билет(ов)- 0 штук(а)
60 билет(ов)- 1 штук(а)

Пример(2):
n-> 35
1 билет(ов)- 0 штук(а)
5 билет(ов)- 1 штук(а)
10 билет(ов)- 1 штук(а)
20 билет(ов)- 1 штук(а)
60 билет(ов)- 0 штук(а)
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота