You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

376 lines
11 KiB
Plaintext

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

{
"cells": [
{
"cell_type": "markdown",
"id": "70a20d37",
"metadata": {},
"source": [
"# Лабораторная работа №2\n"
]
},
{
"cell_type": "markdown",
"id": "d757bc60",
"metadata": {},
"source": [
"Предлагается решить 10 задач на закрепление синтаксиса и наработки навыка решения типовых задач, с которыми далее вы столкнетесь в том или ином виде.\n",
"\n",
"Напоминаю: гуглить - залог успеха."
]
},
{
"cell_type": "markdown",
"id": "58100ed1",
"metadata": {},
"source": [
"### Задача 1.\n",
"\n",
"Дан список случайных целых чисел arr. \n",
"\n",
"Реализуйте функцию, которая будет принимать список и возвращать кортеж состояющий из:\n",
"1) Максимума\n",
"\n",
"2) Минимума\n",
"\n",
"3) Среднего\n",
"\n",
"4) Медианы\n"
]
},
{
"cell_type": "code",
"execution_count": 2,
"id": "73884582",
"metadata": {},
"outputs": [],
"source": [
"# Здесь ничего менять не надо, это исходные данные с которыми будете работать\n",
"import random\n",
"\n",
"# в arr будет записан список из 50 случайных целых чисел в диапазоне от -100 до 100\n",
"arr = random.sample(range(-100, 100), 50)"
]
},
{
"cell_type": "code",
"execution_count": 4,
"id": "ae2484b8",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[-39, -27, -6, -80, -63, 85, 80, 20, 48, 59, 76, 77, -23, 58, 49, 84, -14, -90, -61, 69, -15, -3, -89, -74, 93, 40, -54, -75, 4, 6, -57, -1, -8, 61, 31, -91, 35, -100, -73, -51, 28, 63, 16, 45, -19, 54, 27, -11, -5, -40]\n"
]
}
],
"source": [
"# Убедимся в этом\n",
"print(arr)"
]
},
{
"cell_type": "code",
"execution_count": 5,
"id": "2bdf05f1",
"metadata": {},
"outputs": [],
"source": [
"# в данной функции реализуйте нахождение максимума, минимума, среднего и медианы. Вернуть их в любом порядке. \n",
"# Слова max, min, mean являются КЛЮЧЕВЫМИ не именуйте так свои переменные!\n",
"\n",
"def list_stat(arr):\n",
" \"\"\"\n",
" Напишите здесь свой код\n",
" \"\"\"\n",
" pass"
]
},
{
"cell_type": "code",
"execution_count": 18,
"id": "82749c0a",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"None\n"
]
}
],
"source": [
"print(list_stat(arr))"
]
},
{
"cell_type": "markdown",
"id": "8dcc297d",
"metadata": {},
"source": [
"### Задача 2.\n",
"\n",
"Дан список из предыдущей задачи.\n",
"\n",
"Создайте функцию, которая принимает список и возвращает отсортированный по убыванию список из которого удалены все ОТРИЦАТЕЛЬНЫЕ ЧЕТНЫЕ числа.\n",
"\n",
"Подсказка: можно решить итеративно в лоб, добавляя в новый список требуемые элементы. Либо использовать filter(), про который можно прочесть в документации (потребуется посмотреть еще лямбда-функции)."
]
},
{
"cell_type": "code",
"execution_count": 26,
"id": "eada7f6d",
"metadata": {},
"outputs": [],
"source": [
"# Введите здесь свое решение"
]
},
{
"cell_type": "markdown",
"id": "d00b2c0e",
"metadata": {},
"source": [
"### Задача 3.\n",
"\n",
"Дана строка. \n",
"\n",
"Создайте функцию, которая принимает строку и возвращает кортеж из количества уникальных слов и длины строки. Регистр не является признаком уникальности слова, т.е. Pump и pump равнозначны. \n",
"\n",
"Подсказка: прочитайте про функцию split(). Обратите внимание, что нужно удалить все знаки препинания."
]
},
{
"cell_type": "code",
"execution_count": 24,
"id": "b438bac9",
"metadata": {},
"outputs": [],
"source": [
"s = 'On the other hand, we denounce with righteous indignation and \\\n",
"dislike men who are so beguiled and demoralized by the charms of \\\n",
"pleasure of the moment, so blinded by desire, that they cannot \\\n",
"foresee the pain and trouble that are bound to ensue; and equal \\\n",
"blame belongs to those who fail in their duty through weakness of will, \\\n",
"which is the same as saying through shrinking from toil and pain.'\n"
]
},
{
"cell_type": "code",
"execution_count": 27,
"id": "761bc35c",
"metadata": {},
"outputs": [],
"source": [
"# Введите здесь свое решение"
]
},
{
"cell_type": "markdown",
"id": "1f412e93",
"metadata": {},
"source": [
"### Задача 4\n",
"\n",
"Дана строка из задачи выше.\n",
"\n",
"Создайте функцию, которая принимает строку и считает количество упоминаний каждого слова и возвращает ответ в виде словаря.\n",
"Выведите этот словарь. "
]
},
{
"cell_type": "code",
"execution_count": 37,
"id": "120a8592",
"metadata": {},
"outputs": [],
"source": [
"# Введите здесь свое решение"
]
},
{
"cell_type": "markdown",
"id": "c5fdf1e0",
"metadata": {},
"source": [
"### Задача 5\n",
"\n",
"Дана строка из задачи выше.\n",
"\n",
"Создайте функцию, которая принимает строку и удаляет все слова начинающиеся на t (регистр не имеет значения) и возвращает полученную строку."
]
},
{
"cell_type": "code",
"execution_count": 38,
"id": "e37dadf6",
"metadata": {},
"outputs": [],
"source": [
"# Введите здесь свое решение"
]
},
{
"cell_type": "markdown",
"id": "1a6dd5d2",
"metadata": {},
"source": [
"### Задача 6\n",
"\n",
"Дана строка из задачи выше.\n",
"\n",
"Посчитайте количество глассных и согласных букв. Выведите результат."
]
},
{
"cell_type": "code",
"execution_count": 39,
"id": "c53467dc",
"metadata": {},
"outputs": [],
"source": [
"# Введите здесь свое решение"
]
},
{
"cell_type": "markdown",
"id": "0fb06cef",
"metadata": {},
"source": [
"### Задача 7\n",
"Из приложенного файла lab_2.txt считать текст. \n",
"\n",
"Посчитайте количество предложений в нем и выведите."
]
},
{
"cell_type": "code",
"execution_count": 41,
"id": "1993a351",
"metadata": {},
"outputs": [],
"source": [
"# Введите здесь свое решение"
]
},
{
"cell_type": "markdown",
"id": "ab52fde5",
"metadata": {},
"source": [
"### Задача 8\n",
"Заданы два вектора.\n",
"\n",
"Напишите функцию которая принимает два списка и возвращает значение их скалярного произведения."
]
},
{
"cell_type": "code",
"execution_count": 42,
"id": "1ecb0506",
"metadata": {},
"outputs": [],
"source": [
"vec_1 = [0, 1, 15]\n",
"vec_2 = [2, 4, 3]"
]
},
{
"cell_type": "code",
"execution_count": 43,
"id": "23d6cfb2",
"metadata": {},
"outputs": [],
"source": [
"# Введите здесь свое решение"
]
},
{
"cell_type": "markdown",
"id": "b98c42a0",
"metadata": {},
"source": [
"### *Задача 9\n",
"\n",
"Дан список состоящий из пар натуральных чисел и одного непарного числа. Найти это число и вывести.\n",
"\n",
"Подсказка: можно и нужно использовать оператор XOR. Другие варианты тоже сойдут."
]
},
{
"cell_type": "code",
"execution_count": 60,
"id": "a6484592",
"metadata": {},
"outputs": [],
"source": [
"list_with_forever_alone = [2, 1, 3, 3, 1, 5, 2, 6, 9, 8, 8, 9, 2, 6, 5, 3, 2]"
]
},
{
"cell_type": "code",
"execution_count": 61,
"id": "dc8bf703",
"metadata": {},
"outputs": [],
"source": [
"# Введите здесь свое решение"
]
},
{
"cell_type": "markdown",
"id": "58c7a367",
"metadata": {},
"source": [
"### *Задача 10\n",
"\n",
"Дан список натуральных чисел. Вывести все числа, являющиеся степенью двойки."
]
},
{
"cell_type": "code",
"execution_count": 62,
"id": "9adc83bd",
"metadata": {},
"outputs": [],
"source": [
"list_with_power_two = [24, 13, 25, 32, 17, 8, 2, 14, 0, 16, 1]"
]
},
{
"cell_type": "code",
"execution_count": 63,
"id": "c69960d9",
"metadata": {},
"outputs": [],
"source": [
"# Введите здесь свое решение"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3 (ipykernel)",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.9.6"
}
},
"nbformat": 4,
"nbformat_minor": 5
}