Все задачи оформляются в виде функции!

Задание №1

Даны 2 числа a и b. Нужно вывести на экран значение числа, которое больше.

Задание №2

Даны 3 числа: a,b и c. Нужно вывести на экран значение числа, которое больше.

Задание №3

Задан массив и числа a, b. Вывести все индексы переменных, где выполняется \(a < x[i] < b\).

Задание №4

Дан массив длинны n, состоящий из одних 0. Вы выбираете рандомное число от 1 до n(с помощью функции sample). Это рандомное число показывает индекс элемента массива, который нужно изменить с 0 на 1. После чего вы опять выбираете рандомное число. Это делается до тех пор пока массив не будет состоять из одних 1. Например: был массив с(0,0,0,0). Выпало рандомное число 3. Теперь массив выглядит так : c(0,0,1,0). Вы продолжаете так делать, пока все нули не исчезнут. Нужно посчитать, сколько раз выбиралось рандомное число.

Задание №5

В чем минус этой функции? Перепишите её.

Задание №6

Что можно сказать о следующем коде? Как бы вы его изменилил?

Задание №7

Написать рекурсивную функцию для нахождения факториала.

Задание №8

Давайте создадим функцию для игры. Есть принц, на старте игры у него есть h здоровья. Его цель – забраться по лестнице на башню, где находится принцесса, которую нужно спасти от великана. Количество ступенек равно m. Двигается он по одной ступеньке вверх. Но с каждым продвижением наверх с вероятностью p его бьет по голове великан и герой теряет z здоровья и остается на прежней ступеньке. Нужно понять, сможет ли принц забраться на башню. Это означает, что принц должен забраться на башню и остаться живым.

Hints:

  • Сколько параметров идет на вход?

  • Чтобы замоделировать удар можно воспользоваться функцией sample, у которой есть параметр prob. Например можно бросить монетку, у которой вероятность выпадения орла равна 0.7.

  • Задача циклична. Мы знаем два цикла: for и while. Знаем ли мы сколько придется делать итераций? От этого ответа и зависит выбор.

  • Пробуйте принтовать ваши параметры во время игры. Чтобы сделать это красиво, используйте функцию paste.

  • Можно медленно наблюдать за ходом игры с помощью функции readline(). Это нужно, чтобы подобрать такие параметры, с которыми игра будет всегда разной.

Задание №9

Решив предыдущую задачу, вы создали функцию, которая отвечает на вопрос: “Выиграл ли принц?”. Запустив при некотрых параметрах эту функцию несколько раз, вы будете получать разные результаты. Как оценить вероятность того, что принц сможет спасти принцессу? В этом нам поможет давно знакомая нам формула:

\[ P = \frac{m}{n}, \]

где m - количество побед прица в n играх.

Hint:

  • Сыграйте в игру например 100 раз. Для этого вам понадобится цикл :)

Задание №10 - … (по желанию)

Потренируйтесь и оформите задачи из посиделки №2 в виде функций.