Завдання №3
Прикладна аналітика
Задачі на цикли
У змінних
a
іb
збережено два цілих додатних числа, таких щоa <= b
. Напишіть програму, яка знаходить суму всіх чисел відa
доb
, кратних3
або5
. Збережіть суму у зміннуresult
. Якщо міжa
іb
немає таких чисел, то збережіть уresult
нуль.Приклад Вхідні дані Вихідні дані 1, 10 33 9, 9 9 1, 2 0 Напишіть програму, яка визначає, чи є задане число
num
простим.Якщо
num
- просте число, то збережіть у змінну result рядок"це просте число"
. Якщо число не просте, то збережіть у зміннуresult
рядок"це не просте число"
.Приклад Вхідні дані Вихідні дані 7 “це просте число” 8 “це не просте число”
Просте число - це число, яке ділиться тільки на 1 і на саме себе.
У змінній
number
збережено число. Напишіть код, який перевірить, чи єnumber
ступенем двійки? Ряд ступенів двійки:1, 2, 4, 8, 16, 32, 64 ...
Результат перевірки
True
абоFalse
збережіть у зміннуis_two_power
.Для приготування однієї порції еспресо потрібно приблизно 7 г. меленої кави. Для приготування лате необхідно збити 180 мл. молока і додати до еспресо, а для приготування капучино - 100 мл. молока.
Задано дві змінні:
coffee
- запас меленої кави в кав’ярні (у кілограмах);milk
- запас молока в кав’ярні (у літрах).
Напишіть програму, яка порахує, скільки відвідувачів зможе обслужити кав’ярня, якщо відомо, що:
- У кав’ярні готують три напої на вибір: американо (еспресо + вода), лате і капучино.
- Кожен відвідувач замовляє тільки один напій.
- Відомо, що кожен третій замовлений напій - капучино, а кожен п’ятий - лате.
- Якщо молоко закінчилося, то кав’ярня працює, доки не прийде відвідувач, який бажає замовити каву з молоком.
- Запас води для американо не обмежений.
Результат збережіть у змінну
visitors
.Не забудьте перевести кілограми в грами, а літри - в мілілітри.
Приклад Вхідні дані Вихідні дані 0.1, 1 14 0.07, 0.1 4 Дано список чисел
a
. Напишіть програму, яка повернеTrue
, якщо у списку більше непарних чисел, іFalse
- у всіх інших випадках. Результат збережіть уresult
.Приклад Вхідні дані Вихідні дані [1, 2, 3, 4, 5, 6, 7, 8, 9] True [1, 2, 3, 4, 5, 6, 7, 8, 10] False [1, 2, 3, 4] False Є словник
grades
, що містить інформацію про шкільні предмети та їхні оцінки. У списокgood_subjects
збережіть назви всіх предметів, у яких оцінка більша або дорівнює 7.Вхідні дані Вихідні дані {“Математика”: 9, “Історія”: 6, “Біологія”: 6, “Географія”: 8} [“Математика”, “Географія”] {“Алгебра”: 6, “Геометрія”: 6} [] Напишіть програму, яка прийматиме список чисел
nums
і повертатиме два числа, абсолютна різниця яких мінімальна. Пару чисел збережіть у зміннуresult
у вигляді списку, відсортованого за зростанням.Якщо кілька пар дають мінімальну абсолютну різницю, виберіть ту пару елементів, сума яких більша.
Приклад Вхідні дані Вихідні дані [40, 16, 8, 17, 15] [16, 17] [0, 2, 35, 42, 45, 14, -6, -1] [-1, 0]
- Створіть змінну
min_diff
і збережіть у неї позитивну нескінченність. Це буде змінна зі значенням мінімальної абсолютної різниці. Далі почніть рахувати абсолютну різницю між числами в списку, на кожній ітерації перевіряйте, чи менша поточна різниця, ніж значення у зміннійmin_diff
, якщо це так, то зберігайте вmin_diff
поточне значення і продовжуйте пошуки. - Запис нескінченності у Python:
float("inf")
абоfloat("-inf")
.
Напишіть програму, що приймає у вигляді аргументів два списки
lst_1
іlst_2
і визначає, чи є вони протилежними один одному. Результат перевірки збережіть уresult
у форматіTrue
абоFalse
.Кожна пара списків складатиметься з однакових елементів (типу
a
іb
). Список вважається анти-списком, якщо всі елементи в ньому протилежні відповідним елементам у першому списку.Вхідні дані Вихідні дані [“1”, “0”, “0”, “1”], [“0”, “1”, “1”, “0”] True [“1”, “0”, “0”, “1”], [“0”, “1”, “1”, “1”] False Задано змінну
m
- список зі списків однакової довжини. Перевірте, що суми елементів на діагоналях рівні.Результат перевірки збережіть у
result
у форматіTrue
абоFalse
.Вхідні дані Вихідні дані [[1, 23, 4], [3, 2, 1], [6, 3, 4]] False [[1, 23, 4], [3, 2, 1], [1, 3, 4]] True Напишіть програму, яка приймає словник
input_dict
і повертає рядок вигляду:ключ=значення&ключ=значення
Рядок має бути лексикографічно відсортований за ключами вихідного словника. Збережіть отриману відповідь у
result
.Вхідні дані Вихідні дані {‘lesson’: 2, ‘task’: 21, ‘course’: ‘python’} ‘course=python&lesson=2&task=21’ Напишіть програму, яка приймає один рядок
input_str
і повертає іншийresult
, у якому кожна буква вихідного рядка повторюється двічі.Вхідні дані Вихідні дані ‘python’ ‘ppyytthhoonn’ Напишіть програму, яка прийматиме число
n
і перевірятиме, чи кратна кожна його цифра цифрі, що стоїть ліворуч від неї. Відповідь збережіть уresult
у вигляді масиву булевих значень результатів перевірок.result
завжди має починатися зFalse
, оскільки ліворуч від першої цифри нічого немає.Вхідні дані Вихідні дані 54412 [False, False, True, False, True] Уявімо, що ми організовуємо іспит, у нас є список студентів, які мають виступити з усною доповіддю. Для виступу відбираються тільки ті студенти, які набрали понад 90 балів за письмову роботу. Наше завдання зробити так, щоб студенти виступали по черзі, відсортовані за прізвищем.
Наприклад, якщо в нас є учасники Бабак, Андющенко, Власенко, то виступати вони мають у такому порядку: Андющенко, Бабак, Власенко.
У словнику
students
збережено дані про студентів, ключ - прізвище, значення - кількість балів за іспит, створіть списокstudents_order
, у якому кожен елемент - це кортеж (tuple
) з номером виступу студента та його прізвищем. Уstudents_order
мають бути тільки ті студенти, у яких понад 90 балів. Порядок визначається сортуванням за прізвищем.Вхідні дані Вихідні дані {‘Бабак’: 80, ‘Андющенко’: 99, ‘Власенко’: 100} [(1, ‘Андющенко’), (2, ‘Власенко’)] Давайте навчимося розгадувати таємні шифри! У
my_string
зберігається зашифрований рядок, наприклад:
= 'qircxfcgwxeciscwgwvzlfrciclibecpfvqzg' my_string
У словнику secret_dict
зберігається ключ до шифру, набір символів, які потрібно замінити:
= {
secret_dict 'b': 'k',
'c': ' ',
'g': 'n',
'q': 'h',
'z': 'o',
'v': 't',
'w': 'a',
'f': 'y',
'x': 'm',
'r': ','}
Таким чином, словник secret_dict
каже нам, що в рядку my_string
літеру “b” потрібно замінити на “k”, “c” на “пробіл” тощо. Якщо ми зробимо такі заміни в рядку my_string
, то 'qircxfcgwxeciscwggwwvzlfrciclibecpfvvqzg'
перетвориться на 'hi, my name is anatoly, i like python'
.
Напишіть програму, яка розшифровує рядок my_string
за допомогою словника secret_dict
. Розшифрований рядок збережіть у змінну decrypted_string
.
Дано словник
dict_input
. Поміняйте ключі та значення місцями. Результат збережіть уresult
.Вхідні дані Вихідні дані {“1”: 11, “2”: 22, “3”: 33} {11: “1”, 22:“2”, 33:“3”}
Варіантів рішення може бути декілька. Один з варіантів - функція zip()
, яка дозволяє об’єднати дві послідовності у послідовність пар. Або використайте генератор словників.