{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "## Основы программирования в Python\n", "\n", "*Алла Тамбовцева, НИУ ВШЭ*\n", "\n", "## Семинар 5" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Задача 1\n", "\n", "Напишите программу, которая просит пользователя ввести положительное число, и если пользователь вводит положительное число, выводит на экран сообщение \"Молодец!\", если нет ‒ \"Это не положительное число.\".\n", "\n", "Считайте, что пользователь в любом случае вводит числа, а не какой-то текст." ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Введите положительное число: 0\n", "Это не положительное число.\n" ] } ], "source": [ "n = float(input(\"Введите положительное число: \"))\n", "if n > 0:\n", " print(\"Молодец!\")\n", "else:\n", " print(\"Это не положительное число.\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Задача 2\n", "\n", "Напишите программу, которая принимает на вход список оценок студентов от 1 до 10, выводит на экран оценку, а после нее, с новой строки, комментарий \"Плохо\", \"Удовлетворительно\", \"Хорошо\", \"Отлично\" в зависимости от оценки." ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "3\n", "Плохо\n", "6\n", "Хорошо\n", "8\n", "Отлично\n", "9\n", "Отлично\n", "10\n", "Отлично\n", "4\n", "Удовлетворительно\n", "7\n", "Хорошо\n", "1\n", "Плохо\n" ] } ], "source": [ "marks = [3, 6, 8, 9, 10, 4, 7, 1]\n", "\n", "for mark in marks:\n", " print(mark) # оценку на экран выводим при любых условиях\n", " if mark < 4:\n", " print(\"Плохо\")\n", " elif mark >= 4 and mark < 6:\n", " print(\"Удовлетворительно\")\n", " elif mark >= 6 and mark < 8:\n", " print(\"Хорошо\")\n", " else:\n", " print(\"Отлично\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Задача 3\n", "\n", "Напишите программу, которая запрашивает у пользователя пароль, и далее:\n", "\n", "- если пароль верный, выводит на экран сообщение \"Login success\".\n", "- если пароль неверный, выводит на экран сообщение \"Incorrect password, try again!\" до тех пор, пока пользователь не введет верный пароль." ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Enter password.pass1\n", "Incorrect password, try again!\n", "Enter password.pass121\n", "Login success.\n" ] } ], "source": [ "password = \"pass121\"\n", "\n", "while True:\n", " attempt = input(\"Enter password.\")\n", " if attempt == password:\n", " print(\"Login success.\")\n", " break\n", " else:\n", " print(\"Incorrect password, try again!\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Дополнение:** если бы в условии не было указания выводить сообщения об успехе/ошибке на экран, а нужно было просто запрашивать пароль до тех пор, пока не будет введен верный, решение было бы еще проще." ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Enter password: pass11\n", "Enter password: pass121\n" ] } ], "source": [ "password = \"pass121\"\n", "attempt = input(\"Enter password: \")\n", "\n", "while password != attempt:\n", " attempt = input(\"Enter password: \")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Задача 4\n", "\n", "У питона есть набор любимых чисел.\n", "\n", " favorites = [3, 7, 11, 23, 18, 48, 81]\n", "\n", "Напишите программу, которая просит пользователя ввести целое число, и если оно нравится питону, на экран будет выводиться сообщение: \"Мое любимое число!\", если нет ‒ \"Эх, ну почему?\"." ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Введите целое число: 23\n", "Моё любимое число!\n" ] } ], "source": [ "favorites = [3, 7, 11, 23, 18, 48, 81]\n", "\n", "k = int(input(\"Введите целое число: \"))\n", "\n", "if k in favorites:\n", " print(\"Моё любимое число!\")\n", "else:\n", " print(\"Эх, ну почему?\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Альтернативное решение, разобранное на семинаре (неоптимальное, но интересный вариант – пример того, как обойтись без `in`):" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "n = 0\n", "for i in range(0, len(favorites)):\n", " if k == favorites[i]:\n", " print(\"Мое любимое число!\")\n", " n = n + 1\n", " break\n", " else:\n", " pass\n", " \n", "if n == 0:\n", " print(\"Эх, ну почему?\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Задача 5\n", "\n", "Напишите программу, которая просит пользователя ввести число и, если оно чётное, выводит на экран сообщение: \"Это число чётное\", если нечётное ‒ \"Это число нечётное\"." ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Введите число: 9\n", "Это число нечётное.\n" ] } ], "source": [ "num = float(input(\"Введите число: \"))\n", "\n", "# здесь нам понадобится остаток от деления %\n", "\n", "if num % 2 == 0:\n", " print(\"Это число чётное.\")\n", "else:\n", " print(\"Это число нечётное.\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Задача 6\n", "\n", "Напишите программу, которая просит пользователя ввести существительное, и если слово введено с большой буквы, то на экран выводится сообщение \"Это имя собственное.\", если с маленькой ‒ сообщение \"Это имя нарицательное\"." ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Введите слово: Питон\n", "Это имя собственное.\n" ] } ], "source": [ "word = input(\"Введите слово: \")\n", "\n", "if word.capitalize() == word:\n", " print(\"Это имя собственное.\")\n", "else:\n", " print(\"Это имя нарицательное.\")" ] } ], "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 }