Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 26 additions & 1 deletion lesson01/home_work/hw01_easy.py
Original file line number Diff line number Diff line change
@@ -1,11 +1,36 @@
__author__ = 'Евгений Шум'

# Задача-1: Дано произвольное целое число, вывести поочередно цифры исходного числа
import random

# код пишем тут...
v = str(random.randint(1,999))
#print (v)
n = len (v)
i = 0
while i < n:
print ( v[i] )
i +=1

# Задача-2: Исходные значения двух переменных запросить у пользователя.
# Поменять значения переменных местами. Вывести новые значения на экран.
# Не нужно решать задачу так: print("a = ", b, "b = ", a) - это неправильное решение!

v1 = input('Введите первую переменную: ')
v2 = input('Введите вторую переменную: ')

v3 = v2
v2 = v1
v1 = v3

print(v1)
print(v2)

# Задача-3: Запросите у пользователя его возраст. Если ему есть 18 лет, выведите: "Доступ разрешен",
# иначе "Извините, пользование данным ресурсом только с 18 лет"

v = int (input('Укажите ваш возраст: '))

if v >= 18:
print('Доступ разрешен')
else:
print('Извините, пользование данным ресурсом возможно только с 18 лет')
23 changes: 23 additions & 0 deletions lesson01/home_work/hw01_hard.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
__author__ = 'Евгений Шум'

# Задание-1:
# Ваня набрал несколько операций в интерпретаторе и получал результаты:
# Код: a == a**2
Expand All @@ -7,3 +9,24 @@
# Код: a > 999999
# Результат: True
# Вопрос: Чему была равна переменная a, если точно известно, что её значение не изменялось?

# Поскольку ничего лучше в голову не пришло, попробую сделать, переопределив операнды.
# Гуглил.. Надеюсь, не дичь.

class AltMath:
def __init__ (self, x):
self.x = x
def __gt__ (self, other):
return self.x <= other
def __eq__(self, other):
return self.x == other
def __mul__(self, other):
return self.x * other
def __pow__(self, other):
return self.x ** other

a = AltMath(0)

print ('a == a**2: ', a == a**2)
print ('a == a*2', a == a*2)
print ('a > 999999', a > 999999)
42 changes: 39 additions & 3 deletions lesson01/home_work/hw01_normal.py
Original file line number Diff line number Diff line change
@@ -1,16 +1,52 @@
__author__ = ''

__author__ = 'Евгений Шум'
# Задача-1: Дано произвольное целое число, вывести самую большую цифру этого числа.
# Например, дается x = 58375. Нужно вывести максимальную цифру в данном числе, т.е. 8.
# Подразумевается, что мы не знаем это число заранее. Число приходит в виде целого беззнакового.
import random

v = str(random.randint(1,99999))
print (v)

n = len (v)
i = 0
v_max = 0
while i < n:
if int (v[i]) > v_max:
v_max = int (v[i])
i += 1

print (v_max)


# Задача-2: Исходные значения двух переменных запросить у пользователя.
# Поменять значения переменных местами. Вывести новые значения на экран.
# Решите задачу, используя только две переменные.

v1 = input('Введите первую переменную: ')
v2 = v1
v1 = input('Введите вторую переменную: ')

print(v1)
print(v2)

# Задача-3: Напишите программу, вычисляющую корни квадратного уравнения вида ax2 + bx + c = 0.
# Для вычисления квадратного корня воспользуйтесь функцией sqrt() модуля math
# import math

import math
# math.sqrt(4) - вычисляет корень числа 4
print ('Решаем квадратное уравнение вида "ax2 + bx + c = 0"')
a = float(input ('Введите коэффициент "а": '))
b = float(input ('Введите коэффициент "b": '))
c = float(input ('Введите коэффициент "c": '))

print (-a)
print (b)
print (c)

try:
x1 = float ( -b + math.sqrt(b**2 - 4*a*c))
x2 = float ( -b - math.sqrt(b**2 - 4*a*c))
print ('x1=', str(x1))
print ('x2=', str(x2))
except ValueError as err:
print (err)