{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "## Семинар 1\n", "\n", "*Примечание: под программой в заданиях подразумевается просто блок работающего кода, который выполняет нужную задачу.* " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Задание 0 (вычислительное)\n", "\n", "Посчитайте:\n", "\n", "* $log(25)$, $log(exp(3))$, $log_{10}1000$\n", "* $\\pi^3$, $123^4$ \n", "* $\\sqrt{459}$" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import math" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "3.2188758248682006" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "math.log(25)" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "3.0" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "math.log(math.exp(3))" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "3.0" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "math.log10(1000)" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "31.006276680299816" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "math.pi ** 3" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "228886641" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "123 ** 4" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "21.42428528562855" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "math.sqrt(459)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Задание 1 (стартовое)\n", "\n", "В переменных `a` и `b` хранятся некоторые числа. Напишите код, который бы менял значения переменных местами. Создавать новые переменные можно. \n", "\n", "**Пример:**" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "# до\n", "a = 2\n", "b = 5" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "5\n", "2\n" ] } ], "source": [ "# после\n", "print(a)\n", "print(b)" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "5\n", "2\n" ] } ], "source": [ "c = a\n", "a = b\n", "b = c\n", "\n", "print(a)\n", "print(b)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Задание 2 (арифметическое)\n", "\n", "В переменных `a`, `b`, `c` хранятся какие-то числа. Напишите программу, которая считает их среднее арифметическое." ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "40.0" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "a = 45\n", "b = 55\n", "c = 20\n", "\n", "mean_abc = (a + b + c) / 3\n", "mean_abc" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Задание 3 (экономическое)\n", "\n", "Напишите программу, которая логарифмирует значение ВВП, которое хранится в переменной `gdp` и округляет результат до второго знака после запятой." ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "17.03\n" ] } ], "source": [ "gdp = 25010698\n", "\n", "res = round(math.log(gdp), 2)\n", "print(res)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Задание 4 (финансовое)\n", "\n", "В переменной `salary` хранится значение заработной платы респондента в рублях (можете сами присвоить `salary` какое-нибудь значение).\n", "\n", "Напишите программу, которая выражает заработную плату респондента в тысячах рублей и\n", "\n", "a) просто выводит результат перевода в тысячи на экран;\n", "\n", "б) просто сохраняет результат в переменную `salary_th`;\n", "\n", "в) сохраняет результат в переменную `salary_th` и выводит результат на экран." ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [], "source": [ "salary = 35000" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "35.0\n" ] } ], "source": [ "# a\n", "print(salary / 1000)" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [], "source": [ "# b\n", "salary_th = salary / 1000" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "35.0\n" ] } ], "source": [ "# c\n", "salary_th = salary / 1000\n", "print(salary_th)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Задание 5 (политологическое)\n", "\n", "В переменной `fh` хранится значение индекса политической свободы Freedom House, а в переменной `p`\n", "значение индекса Polity IV. Напишите программу, которая будет считать индекс Freedom:\n", "\n", "$Freedom = 0.4 \\cdot Freedom House + 0.6 \\cdot Polity IV$." ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "3.0" ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "fh = 4.5\n", "p = 2\n", "\n", "freedom = 0.4 * fh + 0.6 * p\n", "freedom" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Задание 6 (налоговое)\n", "\n", "Напишите программу, которая запрашивает у пользователя с клавиатуры\n", "изначальное значение заработной платы в рублях и выводит на экран сообщение: \n", "\n", " Ваша заработная плата с учетом подоходного налога: n рублей.\n", "\n", "где `n` ‒ значение заработной платы с учетом подоходного налога (налоговая ставка 13%).\n", "\n", "Подсказка: для ввода информации с клавиатуры используйте функцию `input()`. Не забудьте учесть, что результат, который вводится через `input()` является строкой, а не числом. Примеры использования `input()` и более подробное знакомство с вводом-выводом в Python – см. [здесь](https://nbviewer.jupyter.org/github/allatambov/Py-programming-3/blob/master/06-04/lecture-input-output.ipynb)." ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Введите значение заработной платы: 23000\n" ] } ], "source": [ "n = input(\"Введите значение заработной платы: \")" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Ваша заработная плата с учетом подоходного налога: 20010 рублей.\n" ] } ], "source": [ "decrease = int(n) * 0.13\n", "final = int(n) - decrease\n", "print(\"Ваша заработная плата с учетом подоходного налога: %i рублей.\" % final)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Задание 7 (весеннее)\n", "\n", "С приходом весны питон решил каждый день выползать погреться на солнышко. Однако он знал, что солнце весной довольно активное, и поэтому разработал такую схему: в первый день он греется одну минуту, а в каждый последующий день увеличивает время пребывания на солнце на 3 минуты. Напишите код, который позволит вычислять, сколько минут питон будет тратить на солнечные ванны в некоторый выбранный день.\n", "\n", "*Внимание:* ваш код должен выводить номер дня и число минут. Использовать циклы нельзя, в задании предполагается многократный запуск ячеек с кодом." ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [], "source": [ "# начальные значения\n", "\n", "d = 1\n", "i = 1" ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "4 10\n" ] } ], "source": [ "# ячейка запускается несколько раз\n", "\n", "dnext = d + 3 # следующий день\n", "i = i + 1 # номер дня\n", "print(i, dnext)\n", "\n", "d = dnext" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Задание 8 (цифровое)\n", "\n", "Питон выполз на улицу погулять и решил поиграть: просил прохожих назвать какую-нибудь цифру (т.е. ввести ее с клавиатуры) и приписывал эту цифру к цифре, которую назвал предыдущий прохожий. Напишите код, который позволит определить, какое число получится после опроса 4 прохожих, если известно, что первый прохожий назвал цифру 5. \n", "Задача не подразумевает использование циклов; запускать код несколько раз / копировать ячейки можно.\n", "\n", "*Пример-пояснение:* первый назвал цифру 5, второй ‒ цифру 6, третий ‒ 3. Получили число 563.\n", "\n", "*Подсказка:* для склеивания строк (такая операция называется конкатенацией) в Python используется `+`:" ] }, { "cell_type": "code", "execution_count": 26, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "password\n" ] } ], "source": [ "a = \"pass\"\n", "b = \"word\"\n", "\n", "print(a + b)" ] }, { "cell_type": "code", "execution_count": 28, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Назовите цифру: 6\n" ] } ], "source": [ "n0 = '5'\n", "n = input(\"Назовите цифру: \")\n", "n0 = n0 + n" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Назовите цифру: 3\n" ] } ], "source": [ "n = input(\"Назовите цифру: \")\n", "n0 = n0 + n" ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "563\n" ] } ], "source": [ "print(n0)" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "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.6.5" } }, "nbformat": 4, "nbformat_minor": 2 }