Список возможных проектов
Предложенные ниже проекты приведены в качестве рекомендации. Вы можете предложить свою идею.
Быки и коровы
Компьютер загадывает четырёхзначное число, цифры в котором не повторяются. Игрок должен его отгадать. После ввода своей догадки, компьютер должен сообщить игроку, сколько цифр угадано без совпадения позиции (количество коров) и сколько цифр угадано с совпадения позиции (количество быков).
Например компьютер загадал число 2453, а пользователь ввёл в качестве догадки 3421. Количество коров - 2, количество быков - 1.
Задача игрока за наименьшее количество ходов угадать число.
Что может пригодится:
- модуль
random
- функции
print
иinput
- условный оператор
if
- цикл
while
- переменная-счётчик
Игра “Баше”
Правила игры Баше следующие: игроки по-очереди берут из кучки в которой 15 предметов не менее 1 и не более 3 предметов за свой ход. Проигравшим считается тот, кому нечего брать.
Напишите программу для игры вдвоём, или с компьютером. Компьютер может выбирать количество предметов случайным образом, или следовать оптимальной стратегии.
Что может пригодится:
- модуль
random
- функции
print
иinput
- условный оператор
if
- цикл
while
- переменная-счётчик
Шар предсказаний
Программа спрашивает пользователя, на какой вопрос он хочет получить ответ. Затем из списка, случайным образом выбирается ответ, который затем выводится на экран.
Что может пригодится:
- модуль
random
- списки
- функции
print
иinput
Камень. Ножницы. Бумага
Программа предлагает сыграть несколько партий в “Камень. Ножницы. Бумага”. В каждом раунде, пользователь вводит свой выбор, компьютер загадывает случайный вариант. Затем определяется победитель. Программа ведёт счёт выигрышей как человека, так и компьютера. По завершении всех раундов, программа сообщает, кто набрал больше очков.
Что может пригодиться:
- модуль
random
- списки
- функции
print
иinput
- цикл
for
- условный оператор
if
- переменные-счётчики
Генератор меню
Пользователь вводит количество названий блюд, которые должны быть в меню. Название можно составить последующему шаблону: “<прилагательное>
<существительное>
из <существительное>
”. Например: Чудесная пицца из Италии.
Что может пригодиться:
- модуль
random
- списки
- функции
print
иinput
- цикл
for
Чат-бот
Напишите программу-собеседника, которая будет реагировать на ключевые слова во фразах, которые вводит пользователь. Например:
бот: Как у вас дела?
человек: Все <хорошо>
бот: Рад, что у вас всё хорошо
Найдя ключевое слово <хорошо>
, чат-бот подберёт одну или случайную фразу. Ключевые слова и возможные ответы можно сохранить в переменной-словаре:
Что может пригодиться:
- модуль
random
- списки
- словари
- функции
print
иinput
- цикл
for
- условный оператор
if
Текстовый квест
Программа описывает ситуацию, и даёт пользователю сделать выбор, что он будет делать дальше. Исходя из выбора пользователя, история развивается по другому пути.
Что может пригодиться:
- функции
print
иinput
- условный оператор
if
Угадай слово
Компьютер загадывает случайное слово из списка, и показывает сколько в нём букв. Игрок вводит букву, и если она есть в слове, то слово отображается с угаданной буквой. Игра продолжается до тех пор, пока слово не угадано. Программа считает количество ходов, которое понадобилось игроку.
Пример работы программы (загадано слово “задача”):
Угадайте слово: _ _ _ _ _ _
Введите букву: а
Угадайте слово: _ а _ а _ а
Введите букву: д
Угадайте слово: _ а д а _ а
...
Что может пригодиться:
- модуль
random
- списки
- переменная -счётчик
- условный оператор
if
- функции
print
иinput
- цикл
while
Кодер-декодер кода Морзе
Напишите программу, которая преобразует строку в азбуку Морзе. Для хранения кодов букв можно использовать словарь, где ключом будет буква, а значение - её код:
Что может пригодиться:
- списки
- словари
- функции
print
иinput
- цикл
for
Программа-архиватор
Программа считывает файл с текстом, в котором некоторые символы повторяются несколько раз подряд (до 9 раз). Напишите программу, которая архивирует файл по следующему алгоритму:
- если символ повторяется один раз, то он переносится в новый файл без изменений;
- если символ повторяется от 2 до 9 раз, то в новом файле символ будет записан один раз, а перед ним будет написана количество повторений.
Например строка Это строчка дляяяяяя прооооооооо вввввверки
превратиться в строку Это строчка дл5я пр8о 5верки
.
Плюс, если программа сможет вернуть сжатый файл в исходное состояние.
Что может пригодиться:
- условный оператор
if
- функции
print
иinput
- цикл
for
- списки
- переменная-счётчик
Викторина
Напишите программу, которая проверит знания ваших друзей. Составьте вопросы и сохраните их в переменной списке. Каждый вопрос можно хранить в виде словаря:
q = [
{
"text": "Текст вопроса.",
"answ": ["ответ 1", "ответ 2", "ответ 3"],
"right_answ": "ответ 1" # правильный ответ
},
{
...
}
]
Количество правильных ответом можно занести в переменную.
Что может пригодиться:
- условный оператор
if
- функции
print
иinput
- цикл
for
- списки
- словари
- переменная-счётчик