-
Notifications
You must be signed in to change notification settings - Fork 0
homework: lectures 2, practice 3 #12
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: main
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,35 @@ | ||
| class Tanks: | ||
| origin_name = 'Тигр' | ||
| color = 'grey' | ||
|
|
||
| def __init__(self, origin_name, color, rotating): | ||
| self.origin_name = origin_name | ||
| self.color = color | ||
| self.rotating = rotating | ||
|
|
||
| def print_about(self): | ||
| print(f"{self.origin_name}, {self.color}, тип башни: {self.rotating}") | ||
|
|
||
|
|
||
| class Route: | ||
| route = 'mountains' | ||
|
|
||
| def __init__(self, route): | ||
| self.route = route | ||
|
|
||
| def print_route(self): | ||
| print(f"{self.route}") | ||
|
|
||
|
|
||
| tank1 = Tanks('T-34', 'grey', 'swivel') | ||
| tank1.print_about() | ||
| tank1 = Route('desert') | ||
| tank1.print_route() | ||
|
|
||
| tank2 = Tanks('САУ', '', 'non-reversible ') | ||
| tank2.print_about() | ||
|
|
||
| tank3 = Tanks('BT-5', 'green', '-') | ||
| tank3.print_about() | ||
| tank3 = Route('forest') | ||
| tank3.print_route() | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,13 @@ | ||
| entered_characters = str() | ||
| while 1: | ||
| x = input("Введите число: ") | ||
| if x.isdigit(): | ||
| entered_characters += x | ||
| elif x.lower() == "stop": | ||
| print(x) | ||
| break | ||
| else: | ||
| print(f"Введен не числовой символ: {x}") | ||
|
|
||
| print(entered_characters) | ||
|
|
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,10 @@ | ||
| word = input("Введите слово: ") | ||
|
|
||
| def palindrome(a): | ||
| if a.lower() == a[::-1].lower(): | ||
|
Owner
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Вот только двойной вызов lower() фактически для одних и тех же символов - это нехорошо. Лучше сначала a обратить в нижний регистр, а потом уже сравнивать с перевертышем. |
||
| return True | ||
| else: | ||
| return False | ||
|
|
||
| print(palindrome(word)) | ||
| print(type(word)) | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,20 @@ | ||
| from random import randint | ||
|
|
||
| y = int(input("Введи 1 число диапазона: ")) | ||
| z = int(input("Введи 2 число диапазона: ")) | ||
| x = randint(y, z) | ||
| while 1: #опять это while 1: - без которого не работает, но я не до конца понимаю как работает с ним) | ||
|
Owner
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Это бесконечный цикл. Условие цикла всегда истинно. Единственный вариант выйти из такого цикла - встретить где-нибудь в его теле оператор break. |
||
| print(f"Загаданное число: {x}") #еще без этой строчки скрипт работает не верно - я понимаю, что без нее у меня цикл не понимает что за х, но как корректно передать не понимаю | ||
|
Owner
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Эта строка на видимость x не влияет и вообще погоды не делает) Вероятно, без нее как-то форматирование едет (отступы/табуляции). Надо разобраться, что за ошибка без этой строки. |
||
| i = int(input("Введи число: ")) | ||
| if i > x: | ||
| print(f"Введенное число {i} больше загаданного") | ||
| elif i < x: | ||
| print(f"Введенное число {i} меньше загаданного") | ||
| else: | ||
| print("Победил") | ||
| break | ||
| # в общем я рещила сама задачу решить без подглядываний куда либо))) в чужой код, соблазн был поэтому много вопросов | ||
| # не могу сообразить как мне прикрутить условие "или не введет нечисловой символ, продолжать опрос" | ||
| # i = int(input("Введи число: ")) | ||
| # но если я убираю int то потом i строка не сравнивается с х = числом | ||
| # может сможете наводящими вопросами направить... | ||
|
Owner
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Сначала надо считать без int. Потом проверить, состоит ли строка только из цифр или нет (т.е. можно ли ее привести к типу число или нет) - для этого у строк есть аж три метода. Если строка состоит не только из цифр - продолжаем опрос (т.е. сразу переходим на следующую итерацию цикла - для этого есть соответствующий оператор), иначе превращаем строку в int и с этим int работаем дальше (по строкам 9-15). |
||
Uh oh!
There was an error while loading. Please reload this page.