Практическое задание 1 Цикл While
Бегун готовится к соревнованиям. Сейчас он может пробежать start километров, а на соревнованиях ему нужно будет пробежать goal километров. До соревнования осталось days дней. Во время подготовки к соревнованиям спортсмен может увеличивать дистанцию, которую он пробегает, не больше чем на 10% в день. В день соревнования тренироваться нельзя. Например, если до начала тренировок спортсмен пробегает 10 км, то тренировочный график должен выглядеть вот так: 11.0 км — 1 день 12.1 км — 2 день 13.31 км — 3 день 14.641 км — 4 день и так далее. Напишите программу, которая рассчитывает, успеет ли спортсмен подготовиться к соревнованиям? Выведите True, если успеет, и False, если не успеет.
Практическое задание 2 Списки и классы в Python
1. Создайте класс объектов Auto для подержанных машин со следующими характеристиками:
2. Создайте 5 объектов со следующими характеристиками:
KiaSor: Kia, Sorrento, 2003, 223 000 км, 415 000 руб, производство: Россия
HyunSol: Hyundai, Solaris, 2015, 41 000 км, 869 000 руб, производство: Корея
VolkPas: Volkswagen, Passat, 2012, 127 000 км, 900 000 руб производство: Германия
LadaPri: Lada, Priora, 2011, 139 000 км, 150 000 руб, производство: Россия
UazPat: UAZ, Patriot, 2011, 150 000 км, 345 400 руб, производство: Россия
3а. Создайте метод класса makeModel, позволяющий распечатать список объектов, причем на печать должны быть выведены только марка и модель автомобиля:
Например, название объекта auto1: Kia Sorrento
3b. Создайте метод класса, позволяющий распечатать все свойства объекта, например:
Kia Sorrento - Price: RUR415000, Production Year: 2003, Mileage: 223000
4. Создайте список listOfCarNames, который содержит названия (марка+модель) всех автомобилей из списка выше.
Чтобы написать свою программу, дополните шаблон, представленный ниже (test_auto.py).
Итоговое задание Основы синтаксического анализа и оценки простого языка
Создайте простой калькулятор, выполняющий два действия с определением правильного порядка их вычисления.
1. Калькулятор должен обрабатывать 4 основные операции +, -, *, / с приоритетом операций.
2. Калькулятор должен обрабатывать отрицательные числа и числа с плавающей точкой.
3. Если вместо одного из операторов найден любой другой символ, калькулятор должен вывести сообщение Wrong operator.
4. Если в процессе вычислений предполагается деление на ноль, калькулятор должен вывести сообщение Division by zero.
5. Входная строка для вычислений должна иметь вид:
число пробел оператор пробел число пробел оператор пробел число, например: 5 + 3 * 2.
Чтобы написать свой калькулятор, дополните шаблон, представленный ниже (calc.py) и выполните метод eval().