-
Notifications
You must be signed in to change notification settings - Fork 454
Create homework1_1 #315
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Create homework1_1 #315
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Оставил комментарии по коду
@@ -0,0 +1,72 @@ | |||
#Arslanov Mikhail Vasimovich | |||
#1. Найти сумму и произведение цифр трехзначного числа, которое вводит пользователь | |||
a = str(input("Введите трехзначное число, сумму и произведение цифр которого вы хотите получить")) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Не нужно делать преобразование к строке. input по умолчанию возвращает строку
# Выполнить над числом 5 побитовый сдвиг вправо и влево на два знака. | ||
x = 5 | ||
y = 6 | ||
a = x | y |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Если в задаче больше трёх переменных, давайте им более понятные имена
|
||
#3. По введенным пользователем координатам двух точек вывести уравнение прямой, проходящей через эти точки. | ||
x = str(input("Введите координаты первой точки: ")) | ||
d0 = int(x[0]) #x1 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Работает, если координата - цифра. Неудачное решение для получения данных
y = str(input("Введите координаты второй точки: ")) | ||
e0 = int(y[0]) #x2 | ||
e1 = int(y[1]) #y2 | ||
k = int((e1-d1)/(e0-d0)) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Нет проверки деления на ноль
|
||
#6. Пользователь вводит номер буквы в алфавите. Определить, какая это буква. | ||
#Задаем словарь | ||
das = {1:'a',2:'b', 3:'c',4:'d',5:'e',6:'f',7:'g',8:'h',9:'i',10:'j',11:'k',12:'l',13:'m',14:'n',15:'o',16:'p',17:'q',18:'r',19:'s',20:'t',21:'u',22:'v',23:'w',24:'x',25:'y',26:'z'} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Посмотрите в сторону import string string.ascii_lowercase
чтобы не писать алфавит вручную
b1 = int(das_rev[b]) | ||
print(“Ваша буква находится на “, das_rev[b1]. “ месте алфавита”) | ||
if a1 > b1: | ||
print(“Между вашими буквами находится ещё “, a1-b1, “ букв”) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Между буквами a
и d
находятся b
и c
- две буквы. А у вас почему-то три.
print(“Между вашими буквами находится ещё “, b1-a1, “ букв”) | ||
|
||
#9. Вводятся три разных числа. Найти, какое из них является средним (больше одного, но меньше другого). | ||
a = input("Введите первое число ") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
C кодом всё понятно, а в блок-схеме в любом случае возвращается "а"
#Arslanov Mikhail Vasimovich for GeekBrains
№ 1. Найти сумму и произведение цифр трехзначного числа, которое вводит пользователь
a = str(input("Введите трехзначное число, сумму и произведение цифр которого вы хотите получить"))
b=int(a[0])
b1=int(a[1])
b2=int(a[2])
print("Сумма: ",b+b1+b2 ,"\nПроизведение", bb1b2)
№ 2. Выполнить логические побитовые операции "И", "ИЛИ" и др. над числами 5 и 6. Выполнить над числом 5 побитовый сдвиг вправо и влево на два знака.
x = 5
y = 6
a = x | y
a1 = x ^ y
a2 = x & y
a3 = x>>2
a4 = x<<2
print(“Результат операции побитового ИЛИ”, a)
print(“Результат операции побитового исключающего ИЛИ”, a1)
print(“Результат операции побитового И”, a2)
print(“Результат операции битового сдвига вправо”, a3)
print(“Результат операции битового сдвига влево”, a4)
№3. По введенным пользователем координатам двух точек вывести уравнение прямой, проходящей через эти точки.
x = str(input("Введите координаты первой точки: "))
d0 = int(x[0]) #x1
d1 = int(x[1]) #y1
y = str(input("Введите координаты второй точки: "))
e0 = int(y[0]) #x2
e1 = int(y[1]) #y2
k = int((e1-d1)/(e0-d0))
b = int(e1-(e1-d1/e0-d0)e0)
print("Ваше уравнение прямой: y = ",k, " x +", b)
№6. Пользователь вводит номер буквы в алфавите. Определить, какая это буква.
(1 действ Задаем словарь)
das = {1:'a',2:'b', 3:'c',4:'d',5:'e',6:'f',7:'g',8:'h',9:'i',10:'j',11:'k',12:'l',13:'m',14:'n',15:'o',16:'p',17:'q',18:'r',19:'s',20:'t',21:'u',22:'v',23:'w',24:'x',25:'y',26:'z'}
(2 действ Просим у пользователя ввести номер буквы в алфавите)
d = int(input(“Введите номер буквы в алфавите. Напоминаю что в алфавите 26 букв “)”
(3 действ Выводим номер буквы)
print(“По этому номеру расположена буква “, das[d])
№5. Пользователь вводит две буквы. Определить, на каких местах алфавита они стоят, и сколько между ними находится букв.
das_rev = {'a':1,'b':2, 'c':3,'d':4,'e':5,'f':6,'g':7,'h':8,'i':9,'j':10,'k':11,'l':12,'m':13,'n':14,'o':15,'p':16,'q':17,'r':18,'s':19,'t':20,'u':21,'v':22,'w':23,'x':24,'y':25,'z':26}
a = input("Введите первую букву ")
a1 = int(das_rev[a])
print(“Ваша буква находится на “, das_rev[a1], “ месте алфавита”)
b = input(“Введите вторую букву “)
b1 = int(das_rev[b])
print(“Ваша буква находится на “, das_rev[b1]. “ месте алфавита”)
if a1 > b1:
print(“Между вашими буквами находится ещё “, a1-b1, “ букв”)
else:
print(“Между вашими буквами находится ещё “, b1-a1, “ букв”)
№9. Вводятся три разных числа. Найти, какое из них является средним (больше одного, но меньше другого).
a = input("Введите первое число ")
b = input("Введите второе число ")
с = input("Введите третье число ")
if a > b:
if a > c:
if b > c:
print(b, " - среднее значение")
else: print(c, " - среднее значение")
else: print(a, " - среднее значение")
elif a < c:
if b > c:
print(c, " - среднее значение")
else: print(b, " - среднее значение")
else: print(a, " - среднее значение")