Задачи к занятию №1
Задание 1
Дана переменная, в которой хранится слово из латинских букв. Напишите код, который выводит на экран:
- среднюю букву, если число букв в слове нечетное;
- две средних буквы, если число букв четное.
Примеры работы программы:
word = 'test'
Результат:es
word = 'testing'
Результат:t
Задание 2
Напишите программу, которая последовательно запрашивает у пользователя числа (по одному за раз) и после первого нуля выводит сумму всех ранее введенных чисел.
Примеры работы программы:
Введите число:
1
Введите число:
4
Введите число:
6
Введите число:
0
Результат:11
Введите число:
0
Результат:0
Задание 3
Мы делаем MVP dating-сервиса, и у нас есть список парней и девушек.
Выдвигаем гипотезу: лучшие рекомендации мы получим, если просто отсортируем имена по алфавиту и познакомим людей с одинаковыми индексами после сортировки! Но мы не будем никого знакомить, если кто-то может остаться без пары:
Примеры работы программы:
boys = ['Peter', 'Alex', 'John', 'Arthur', 'Richard']
girls = ['Kate', 'Liza', 'Kira', 'Emma', 'Trisha']
Результат:
Идеальные пары:
Alex и Emma
Arthur и Kate
John и Kira
Peter и Liza
Richard и Trisha
boys = ['Peter', 'Alex', 'John', 'Arthur', 'Richard', 'Michael']
girls = ['Kate', 'Liza', 'Kira', 'Emma', 'Trisha']
Результат:Внимание, кто-то может остаться без пары!
Задание 4
У нас есть список, содержащий информацию о среднедневной температуре в Фаренгейтах за произвольный период по странам (структура данных в примере). Необходимо написать код, который рассчитает среднюю температуру за период в Цельсиях(!) для каждой страны.
Пример работы программы:
countries_temperature = [
['Thailand', [75.2, 77, 78.8, 73.4, 68, 75.2, 77]],
['Germany', [57.2, 55.4, 59, 59, 53.6]],
['Russia', [35.6, 37.4, 39.2, 41, 42.8, 39.2, 35.6]],
['Poland', [50, 50, 53.6, 57.2, 55.4, 55.4]]
]
Результат:
Средняя температура в странах:
Thailand - 23.9 С
Germany - 13.8 С
Russia - 3.7 С
Poland - 12.0 С
Задание 5 (необязательное)
Дан поток логов по количеству просмотренных страниц для каждого пользователя. Вам необходимо написать алгоритм, который считает среднее значение просмотров на пользователя. Т. е. надо посчитать отношение суммы всех просмотров к количеству уникальных пользователей.
Примеры работы программы:
stream = [
'2018-01-01,user1,3',
'2018-01-07,user1,4',
'2018-03-29,user1,1',
'2018-04-04,user1,13',
'2018-01-05,user2,7',
'2018-06-14,user3,4',
'2018-07-02,user3,10',
'2018-03-21,user4,19',
'2018-03-22,user4,4',
'2018-04-22,user4,8',
'2018-05-03,user4,9',
'2018-05-11,user4,11',
]
Результат:Среднее количество просмотров на уникального пользователя: 23.25
stream = [
'2018-01-01,user100,150',
'2018-01-07,user99,205',
'2018-03-29,user1001,81'
]
Результат:Среднее количество просмотров на уникального пользователя: 145.33
Задание 6 (необязательное)
Необходимо у пользователя запрашивать набор чисел разделенных пробелом. В результате в отсортированном порядке должны выводиться числа, которые повторяются в вводе более одного раза.
Примеры работы программы:
Введите числа:
4 8 0 3 4 2 0 3
Результат:0 3 4
Введите числа:
1 1 2 2 3 3
Результат:1 2 3
Введите числа:
10 15 15 103 200 200 200 1 1 1 1 1 2 2 2
Результат:1 2 15 200
ПРИМЕЧАНИЕ
Домашнее задание сдается ссылкой Google Colab или Colabedit. Не сможем проверить или помочь, если вы пришлете:
- файлы;
- архивы;
- скриншоты кода.
Все обсуждения и консультации по выполнению домашнего задания ведутся здесь.
Как правильно задавать вопросы преподавателю.
Прежде чем задать вопрос, попробуйте найти ответ в интернете. Навык самостоятельного поиска информации — один из важнейших. Каждый практикующий специалист любого уровня делает это ежедневно.
Сформулируйте вопрос по алгоритму:
1) Что я делаю?
2) Какого результата я ожидаю?
3) Как фактический результат отличается от ожидаемого?
4) Что я уже попробовал сделать, чтобы исправить проблему?
По возможности прикрепите к вопросу скриншоты либо ссылки на код. Не выкладывайте все решение, оставляйте только проблемный и воспроизводимый участок кода.