maximstrekalovs
11.06.2022 02:47

Два игрока, Петя и Ваня, играют в следующую игру. Перед игроками лежат две кучи камней. Игроки ходят по очереди, первый ход делает Петя. За один ход игрок может добавить в одну из куч (по своему выбору) один камень или увеличить количество камней в куче в три раза. Например, пусть в одной куче 10 камней, а в другой 7 камней; такую позицию в игре будем обозначать (10, 7). Тогда за один ход можно получить любую из четырёх позиций: (11, 7), (30, 7), (10, 8), (10, 21). Для того чтобы делать ходы, у каждого игрока есть неограниченное количество камней. Игра завершается в тот момент, когда суммарное количество камней в кучах становится не менее 67. Победителем считается игрок, сделавший последний ход, т.е. первым получивший такую позицию, при которой в кучах будет 67 или больше камней. В начальный момент в первой куче было 5 камней, во второй куче – S камней; 1 ≤ S ≤ 61.
Задание 3

Укажите значение S, при котором одновременно выполняются два условия:

− у Вани есть выигрышная стратегия, позволяющая ему выиграть первым или вторым ходом при любой игре Пети;

− у Вани нет стратегии, которая позволит ему гарантированно выиграть первым ходом.

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
Savelijbih
03.03.2022 08:37
function ptcrk(a,b,x,y,r: real): integer;
var k: integer;
begin
  k:=0;  
  if abs(sqr(x-a)+sqr(y-b)-r*r)<1.0e-9 then k:=1;
  if r*r-sqr(x-a)-sqr(y-b)>1.0e-9 then k:=2;
  ptcrk:=k;
end;
// основная программа
var a,b,x,y,r,k: real;
begin
  write('координаты центра a b: ');  readln(a,b);
  write('координаты точки x y: ');  readln(x,y);
  write('радиус: ');  readln(r);
  k:=ptcrk(a,b,x,y,r);
  if k=1 then writeln('точка на окружности');
  if k=2 then writeln('точка внутри круга');
  if k=0 then writeln('точка вне круга');
end.

координаты центра a b: 2 1
координаты точки x y: 4 1
радиус: 2.1
точка внутри круга

координаты центра a b: 2 1
координаты точки x y: 4 1
радиус: 2
точка на окружности
0,0(0 оценок)
Ответ:
seetneek
25.04.2022 07:57
1) var a:array[1..10] of real;
i:integer;

begin

randomize;
for i:=1 to 10 do begin
a[i]:= random(200) -100;
write(a[i]:5); end;

writeln;

for i:=1 to 10 do 
if a[i]>=0 then a[i]:=a[i]/2 else a[i]:=i;
write(a[i]:5);

end.

2) var a:array[1..1000] of real;
s1,s2:real;
i,n:integer;
begin
write('Введите кол-во элементов: '); readln(n);
writeln('Введите элементы массивы: '); 
for i:=1 to n do
read(a[i]);

s1:=0; s2:=0;
for i:=1 to n do
if odd(i) then s1:=s1+a[i] else s2:=s2+a[i];

writeln('Сумма элементов с четными номерами: ',s2);
writeln('Сумма элементов с нечетными номерами: ',s1);
end.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота