Экзамен
ЛАЙФ КОДИНГ ПО ВСЕМ ТЕМАМ
Avito code (https://code.avito.ru/) Yandex code (https://code.yandex-team.ru/) Tinkoff Digital Interview (https://interview.tbank.ru/)
Повтори про изменяемость и неизменяемость данных. Поговорим про это глубже, возможно надо будет продемонстрировать на коде Поговорим про различие между типами данных Проверим практические навыки написания кода и выбора пути решения проблем/задач Поработаем с коллекциями и основными их методами Уделим время на понимание логических конструкций и логических операторов
Задание 1 (Операции с данными: Арифметические операции, операции сравнения, логические операции)
Тема: 02.03 - Операции с данными
Простые задания
Арифметические операции
Example
- Напишите программу, которая выводит:
- Сумму двух чисел.
- Разность двух чисел.
- Произведение двух чисел.
- Результат деления двух чисел.
-
Решение:
# Числа a = 5 b = 2 # Операции print("Сумма:", a + b) print("Разность:", a - b) print("Произведение:", a * b) print("Деление:", a / b)
Операции сравнения
Example
- Напишите программу, которая сравнивает два числа и выводит:
- Число
aбольше, меньше или равно числуb.
-
Решение:
# Числа a = 7 b = 10 # Сравнение if a > b: print(f"{a} больше {b}") elif a < b: print(f"{a} меньше {b}") else: print(f"{a} равно {b}")
Средние задания
Арифметические и логические операции
Example
- Напишите программу, которая:
- Сравнивает сумму двух чисел с третьим числом.
- Проверяет, меньше ли произведение двух чисел, чем третье число.
-
Решение:
# Числа a = 2 b = 3 c = 10 # Проверки print("Сумма больше третьего?", a + b > c) print("Произведение меньше третьего?", a * b < c)
Логические операции
Example
- Напишите программу, которая проверяет, входит ли заданное число в диапазон от 10 до 20 (включительно).
-
Подсказка
Текстовые подсказки:
-
Создание переменной
В программе будет использоваться переменная
number, в которую вы запишите число, вводимое пользователем. Ее можно получить черезinput(). -
Условие проверки (if-else)
Используйте оператор
ifдля проверки, входит ли число в диапазон от 10 до 20 включительно. Это делается с помощью логического условия:10 <= number <= 20Если условие выполняется, программа напечатает, что число входит в диапазон. Если нет, блок
elseвыведет, что число не входит в диапазон. -
Обработка ввода
Число, которое вводится через
input(), следует преобразовать в целое число с помощью функцииint(). Это важно, потому что данные изinput()по умолчанию имеют строковый тип.
-
-
Решение:
# Число number = 15 # Проверка диапазона if 10 <= number <= 20: print("Число в диапазоне") else: print("Число вне диапазона")
Сложное задание
Простейший калькулятор
Example
- Напишите программу, которая:
- Выполняет одну из арифметических операций (
+, , ,/,%,//,*) между двумя числами.- Если операция деления (
/,//,%) выбирается при втором числе равном 0, программа должна выводить сообщение об ошибке.
-
Решение:
a = float(input("Введите первое число: ")) b = float(input("Введите второе число: ")) operation = input("Введите операцию (+, -, *, /, %, //, **): ") # Калькулятор if operation == "+": print("Результат:", a + b) elif operation == "-": print("Результат:", a - b) elif operation == "*": print("Результат:", a * b) elif operation == "/": if b != 0: print("Результат:", a / b) else: print("Ошибка: Деление на 0") elif operation == "%": print("Результат:", a % b) elif operation == "//": print("Результат:", a // b) elif operation == "**": print("Результат:", a ** b) else: print("Ошибка: Неверная операция")
Задание 2 Манипуляции над типами данных
Тема: 02.02 - Переменные и Типы данных, 02.05 - Изменяемые и неизменяемые типы данных
Простые задания
Манипуляции над строками (методы строк)
Example
- Напишите программу, которая:
- Создаёт строку
text = "Python is awesome!".- Применяет к этой строке метод
upper()и выводит результат.- Применяет метод
replace()для замены словаawesomeнаamazingи выводит результат.
-
Решение:
# Исходная строка text = "Python is awesome!" # Применение методов print("Заглавные буквы:", text.upper()) print("Замена слова:", text.replace("awesome", "amazing"))
Срезы (слайсинг) строк
Example
- Напишите программу, которая:
- Создаёт строку
text = "Hello, Python!".- Выводит первые 5 символов строки.
- Выводит все символы строки через один.
-
Решение:
# Исходная строка text = "Hello, Python!" # Срезы print("Первые 5 символов:", text[:5]) print("Символы через один:", text[::2])
-
Округление цифр
Задание:
Напишите программу, которая:
- Создаёт число
pi = 3.14159. - Округляет его до двух знаков после запятой.
- Выводит результат.
Подсказки:
-
Создание числа
Начните с создания переменной
pi, в которой хранится число с плавающей точкой (например,3.14159). -
Использование функции
roundДля округления числа используйте функцию
round(). Она принимает два аргумента:- первое — число, которое нужно округлить;
- второе — количество знаков после запятой.
Например:
округленное_число = round(число, количество_знаков) -
Вывод результата
Выводите результат с помощью функции
print().
Пример кода:
pi = 3.14159 rounded_pi = round(pi, 2) print(rounded_pi)Результат:
3.14 - Создаёт число
Средние задания
Замена подстрок
Example
- Напишите программу, которая:
- Создаёт строку
quote = "Python is easy and powerful!".- Заменяет
easyнаfunиpowerfulнаversatile.- Выводит результат.
-
Решение:
Используй функцию replace() для замены слов в строке
Задания с f”строкой”
Example
- Напишите программу, которая:
- Создаёт переменные
name = "Alice"иage = 25.- Формирует строку вида:
Alice is 25 years old.с помощью f-строки и выводит её.
Сложное задание
Example
- Обработка строки и числа вместе
- Напишите программу, которая:
- Создаёт строку
data = "Price: 1234.5678 USD".- Извлекает числовую часть строки (1234.5678) с помощью среза и преобразует её в число.
- Округляет это число до двух знаков после запятой.
- Формирует новую строку вида:
"Rounded price: 1234.57 USD"и выводит её.
-
Решение:
# Исходная строка data = "Price: 1234.5678 USD" # Извлечение числовой части number_part = float(data[7:-4]) # Округление числа rounded_number = round(number_part, 2) # Формирование новой строки result = "Rounded price: " + str(rounded_number) + " USD" print(result)
Задание 3 Массивы и другие структуры данных в Python
Тема: 02.04 - Коллекции данных
Простые задания
Работа со списком
Example
Создайте список
fruits = ["apple", "banana", "cherry", "date"].
- Добавьте в список новый фрукт
"kiwi".- Удалите фрукт
"banana".- Выведите итоговый список.
-
Решение:
fruits = ["apple", "banana", "cherry", "date"] fruits.append("kiwi") fruits.remove("banana") print(fruits) # ['apple', 'cherry', 'date', 'kiwi']
Работа со словарём
Example
- Создайте словарь
person = {"name": "Alice", "age": 25, "city": "New York"}.- Обновите возраст на
26.- Добавьте новый ключ
"profession"со значением"engineer".- Выведите обновлённый словарь.
-
Решение:
person = {"name": "Alice", "age": 25, "city": "New York"} person["age"] = 26 person["profession"] = "engineer" print(person) # {'name': 'Alice', 'age': 26, 'city': 'New York', 'profession': 'engineer'}
Средние задания
Работа с кортежем
Example
- Создайте кортеж
numbers = (10, 20, 30, 40, 50).- Выведите второй элемент кортежа.
- Попробуйте изменить значение третьего элемента и объясните результат.
-
Решение:
numbers = (10, 20, 30, 40, 50) print(numbers[1]) # 20 # Кортеж неизменяемый, следующий код вызовет ошибку: # numbers[2] = 35 # TypeError: 'tuple' object does not support item assignment
Работа с множеством
Example
- Создайте множество
colors = {"red", "blue", "green"}.- Добавьте новый цвет
"yellow".- Удалите цвет
"blue".- Попробуйте добавить уже существующий цвет
"red"и объясните результат.
-
Решение:
colors = {"red", "blue", "green"} colors.add("yellow") colors.remove("blue") colors.add("red") # Уже существует, множество останется без изменений. print(colors) # {'red', 'green', 'yellow'}
Сложное задание
Работа с диапазоном и списками
Example
- Создайте диапазон чисел от
1до20включительно.- Преобразуйте его в список.
- Найдите сумму всех чисел в списке.
- Найдите все числа, которые делятся на
3, и создайте из них новый список.- Выведите оба списка: оригинальный и новый.
-
Решение:
# Создаём диапазон num_range = range(1, 21) # Преобразуем в список num_list = list(num_range) # Находим сумму всех чисел total_sum = sum(num_list) # Числа, делящиеся на 3 divisible_by_3 = [num for num in num_list if num % 3 == 0] print("Оригинальный список:", num_list) print("Сумма чисел:", total_sum) print("Числа, делящиеся на 3:", divisible_by_3)
Задания 4 на тему “Циклы в Python”
Тема: 02.07 - Циклы
Простое задание
Example
Вывод чисел от 1 до 10
Напишите программу, которая использует цикл
for, чтобы вывести числа от 1 до 10.
Среднее задание
Example
Обратный отсчёт
Напишите программу, которая использует цикл
whileдля вывода чисел от 10 до 1, а затем выводит сообщение"Счёт завершён!".
Сложное задание
Example
Таблица умножения на 5
Напишите программу, которая выводит таблицу умножения на 5 с использованием вложенного цикла.
Мега задание Магазин гоблина из Warcraft 3
Задание: Магазин гоблина из Warcraft 3
Example
Гоблин открыл свой магазин, где продаются зелья, свитки и артефакты. Вам нужно написать программу, которая:
- Имеет словарь товаров и их цен. Например:
- Зелье лечения: 100 золотых
- Зелье маны: 80 золотых
- Свиток скорости: 150 золотых
- Артефакт магии: 300 золотых
- Запрашивает у игрока название товара и количество.
- Проверяет, есть ли товар в магазине:
- Если есть, программа рассчитывает стоимость и выводит её.
- Если общая стоимость заказа превышает 500 золотых, гоблин делает скидку 20%.
- Если товара нет, гоблин говорит: “У меня такого нет, попробуй в другом месте!”
Пример кода
# Товары в магазине гоблина
goblin_shop = {
"Зелье лечения": 100,
"Зелье маны": 80,
"Свиток скорости": 150,
"Артефакт магии": 300
}
# Ввод данных от игрока
item = input("Что хотите купить? ")
quantity = int(input("Сколько хотите купить? "))
# Проверка наличия товара
if item in goblin_shop:
total_price = goblin_shop[item] * quantity
print(f"Изначальная стоимость: {total_price} золотых")
# Применение скидки
if total_price > 500:
total_price *= 0.8 # Скидка 20%
print("Гоблин говорит: 'Твоя скидка 20%! Покупай быстрее, пока я не передумал!'")
print(f"Итоговая стоимость: {total_price:.2f} золотых")
else:
print("Гоблин говорит: 'У меня такого нет, попробуй в другом месте!'")
⬅️ Назад: 02.08 - Паттерны решения задач | Далее: 03 - MOC ➡️ Модуль: 02 - MOC