Примеры кода

Здесь же: пример оформления решения задачи. См. конец с примерами кода

# примеры кода

hello = 42
print(hello)  # печатает 42 из
              # переменной hello
print("hello")  # текст для печати


# заводим переменные
x = 123  # такой переменной не было
         # она создаётся
x = x + 1  # значение заменится

x = 123.456  # вещественные числа
s = "Ответ = "  # строковое значение
print(s)  # увидим, чему равен s

b = True  # логические значения
f = False  # всего 2: True, False

a = 2 + 3  # число 5
b = 3 * (5 + 7)  # 36
с = 10 > 6  # True
x = 10
c = x > 6  # True
c = x > 6 and x < 20  # не нужны скобки
   # True and True  = True
print(True and False)  # False
print(True or False)  # True
print(not False)  # True

c = 6 < x < 20  # это 6 < x and x < 20

print(2 + 2)  # 4
print(2 - 2)  # 0
print(2 * 2)  # 4
print(10 / 3) # 3.333 вещественное деление
print(10 // 3)# 3 целоичесленное (div)
print(10 % 3)

print(34934 // 10)  # 3493
print(34934 % 10)  # 4 последняя цифра

print(10 > 20)
print(10 < 20)
print(10 <= 20)
print(10 >= 20)
print(10 == 20)  
print(10 != 20)  # проверка на неравенство

# == и != работают не только для чисел
print("abc" == "abc")  # True
print("abc" != "abc")  # False
# не пользуйтесь == и != для вещественных

# Условный оператор
# if УСЛОВИЕ:
#     ДЕЙСТВИЯ, ЕСЛИ ИСТИНА
#     ДЕЙСТВИЙ МОЖЕТ БЫТЬ НЕСКОЛЬКО
#     ОНИ ПИШУТСЯ С ОТСТУПОМ 4 пробела
#     (PEP 8)

x = 10
if x > 10:
    print("много")

x = 10
if x > 10:
    print("много")
    print("очень много")
else:
    print("мало")
    print("очень мало")

# без отступа - вне условного оператора
print("x проверен")

# условия могут быть вложены:
print("----")
x = 10
if x > 10:
    print("много")
    if x > 100:
        print("очень много")  # еще отступ
else:
    print("мало")
    if x < 2:
        print("очень мало")

print("x проверен")

print("----")
x = 10
if x > 100:
    print("очень много")
elif x > 30:
    print("многовато")
elif x > 10:
    print("много")
else:
    print("мало")

# группировка условий
x = 1
y = 4
if x == 1 and (y == 2 or y == 3):
    # True and (False or False)
    # True and False
    # False
    print("x равен один, а y равно 2 или 3")
else:
    print("ошибка системы")

# строки, в которые вставлены значения
# выражений. "Интерполяция строк":
# (забудьте про оператор % для строк)

x = 42
print("У меня есть {x} кота")
print("У меня есть " + str(x) + " кота")
print(f"У меня есть {x} кота")  # f"

x = 2 ** 0.5  # 2 в степени половина =
              # корень из двух
print(f"корень из двух это {x}")
# как вывести ровно 2 знака после запятой
print(f"корень из двух это {x :.2f}")

# Оформление задач
# Если вы только начинаете изучать питон
# Пример, проверить, что последняя цифра
# числа равна трём

# начало файла
x = 98253  # это как будто число для проверки
           # не вводите с клавиатуры
if x % 10 == 3:
    print("последняя цифра равна 3")
else:
    print("последняя цифра не 3")

# чуть-чуть более продвинуто
x = 34534
print(f"последняя цифра равна 3: {x % 10 == 3}")

# как делать надо, и мы будем все так делать начиная
# с третьего, четвертого занятия

def last_digit_is_3(x):
    return x % 10 == 3

print(last_digit_is_3(34534))
print(last_digit_is_3(13))
print(last_digit_is_3(4))
print(last_digit_is_3(3))

Лекция 2

Типы данных, строки, функции

Тестирующая система

Описание тестирующей системы

Задачи, часть 1, вводные

В этом списке не все задачи простые и коротко решаются, не беспокойтесь, если задача, особенно из конца списка, вызвала затруднение.

Все задачи из этого раздела можно решить только с помощью условного оператора if. Но решения последних задач могут оказаться длинными, если не пользоваться другими возможностями Python.

  1. Дано число, проверить, что в нем ровно три цифры. тесты
  2. Дано число, проверить, верно ли, что у него на конце цифра 5. тесты
  3. Дано число, проверить, верно ли, что у него на конце две одинаковые цифры. тесты
  4. Високосный год Дан год, определить, високосный или нет. Обязательно прочитайте в википедии, что такое високосный год. тесты
  5. Коты Дано целое число. Верните строку, в которой к этому числу приписано существительное “кот” в правильной форме. Например, “1 кот”, “2 кота”, “5 котов”. тесты
  6. Квадратное уравнение Даны коэффициенты квадратного уравнения, целые числа a, b, c: \(ax^2+bx+c = 0\) Решите квадратное уравнение. Разберите все случаи, включая \(a = 0\). Верните ответ в виде одной из следующих строк: «решений нет», «одно решение x = …», «два решения x1 = …, x2 = …» или «решений бесконечно много». Округлите ответы до двух знаков после запятой. Если в уравнении два корня, сначала выведите меньший корень. тесты
  7. Квадратный трехчлен Даны три целых числа a, b, с, выведите многочлен ax^2+bx+с. Верните результат в виде строки. Проделайте все традиционные упрощения, т.е. не умножайте на нули, единицы, не прибавляйте нули. Например,
         poly(1,2,3) == "x^2+2x+3"
         poly(2,0,-1) == "2x^2-1"
         poly(0,0,0) = "0"
    

    тесты

  8. Число в виде текста Дано целое число от 1 до 999, верните его в виде текста. Убедитесь, что вы не выводите двух пробелов подряд, и пробелов в конце. тесты
    • Длинное число в виде текста Решите задачу, при условии, что дано число от 1 до 999_999_999. тесты