М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации

Задание 19. Известно, что Ваня выиграл своим первым ходом после неудачного первого хода Пети. Укажите минимальное значение S, когда такая ситуация возможна.
Задание 20.
Найдите минимальное значение S, при котором у Пети есть выигрышная стратегия, причём одновременно выполняются два условия:
− Петя не может выиграть за один ход;
− Петя может выиграть своим вторым ходом независимо от того, как будет ходить Ваня.
Задание 21
Найдите два значения S, при которых одновременно выполняются два условия:
– у Вани есть выигрышная стратегия, позволяющая ему выиграть первым или вторым ходом при любой игре Пети;
– у Вани нет стратегии, которая позволит ему гарантированно выиграть первым ходом.
Найденные значения запишите в ответе в порядке возрастания.

За один ход игрок может добавить в одну из куч (по своему выбору) два камня или увеличить количество камней в куче в два раза. Игра завершается в тот момент, когда суммарное количество камней в кучах становится не менее 74. Победителем считается игрок, сделавший последний ход, т.е. первым получивший такую позицию, при которой в кучах будет 74 или больше камней. В начальный момент в первой куче было 7 камней, во второй куче – S камней; 1 ≤ S ≤ 66.​

👇
Открыть все ответы
Ответ:
zef3
zef3
18.11.2020

Задача 1:

var X,Y,tmp: double;

begin

writeln('Введите x');

readln(X);

writeln('Введите y');

readln(Y);

if (X<Y) then begin

tmp:=X;

X:=(X+Y)/2;

Y:=tmp*Y*2;

end

else begin

tmp:=Y;

Y:=(X+Y)/2;

X:=tmp*X*2;

end;

writeln('X=',X);

writeln('Y=',Y);

end.

Задача 6

var a,b,c,cnt: integer;

begin

writeln('Введите a');

readln(a);

writeln('Введите b');

readln(b);

writeln('Введите c');

readln(c);

cnt:=0;

if (a<0) then cnt:=cnt+1;

if (b<0) then cnt:=cnt+1;

if (c<0) then cnt:=cnt+1;

writeln('Кол-во отрицательных чисел: ',cnt);

end.

4,6(49 оценок)
Ответ:
Мэри6669
Мэри6669
18.11.2020

(см. объяснение)

Объяснение:

Задание №17:

//Привычный тебе код:

var k,l,n,m: integer;

begin

 write('Введите число k >> '); readln(k);

 write('Введите число l >> '); readln(l);

 write('Введите число n >> '); readln(n);

 write('Введите число m >> '); readln(m);

 if((l mod k = 0) and (n mod k = 0) and (m mod k = 0)) then writeln('Является!')

 else writeln('Не является!');

end.

//Альтернативное решение задачи нестандартным методом:

begin

 var k: integer := ReadInteger('Введите число k >>');

 var l: integer := ReadInteger('Введите число l >>');

 var n: integer := ReadInteger('Введите число n >>');

 var m: integer := ReadInteger('Введите число m >>');

 if((l mod k = 0) and (n mod k = 0) and (m mod k = 0)) then writeln('Является!')

 else writeln('Не является!');

end.

Задача №19:

//Привычное тебе решение:

var a,b,c: real;

procedure isBiggest(x,y,z: real);

begin

 if((x>y) and (y>z))

   then begin  

          writeln('ответ: ', x, ', ', y, ', ', z);

          exit;

        end;

end;

begin

 write('Введите число a >> '); readln(a);

 write('Введите число b >> '); readln(b);

 write('Введите число c >> '); readln(c);

 isBiggest(a,b,c); isBiggest(a,c,b);

 isBiggest(b,a,c); isBiggest(b,c,a);

 isBiggest(c,a,b); isBiggest(c,b,a);

end.

//Альтернативное решение задачи.

//Уникальность кода в том, что он работает при любом количестве данных чисел. Все зависит от ReadArrReal(n);

begin

 'Введите числа a,b,c через пробел:'.Println;

 var x: array of real := ReadArrReal(3);

 System.Array.Sort(x);

 System.Array.Reverse(x);

 x.Println;

end.

Задача №21:

//Привычное для тебя решение:

var x: real;

begin

 writeln('Введите число x >>'); readln(x);

 if(x<0) then writeln(4)

   else if(x>1) then writeln(x+7)

          else writeln(x*x+3*x+4);

end.

//Альтернативное решение:

//Используется тип double для большей точности

begin

 var x: double := ReadReal('Введите число x >>');

 if(x<0) then writeln(4)

   else if(x>1) then writeln(x+7)

     else writeln(x*x+3*x+4);

end.

4,8(6 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ