Нужна помощь Python программистов

[ Версия для печати ]
Добавить в Telegram Добавить в Twitter Добавить в Вконтакте Добавить в Одноклассники
Страницы: (13) 1 [2] 3 4 ... Последняя »  К последнему непрочитанному [ ОТВЕТИТЬ ] [ НОВАЯ ТЕМА ]
Aberrant
21.05.2022 - 16:36
0
Статус: Offline


На фоксе! Всегда!

Регистрация: 3.10.20
Сообщений: 2724
Цитата (ipv4 @ 21.05.2022 - 16:31)

Да, ладно! Сжирает, ога.

без code trim`ит всё
 
[^]
ipv4
21.05.2022 - 16:37
0
Статус: Offline


Ярила

Регистрация: 4.11.09
Сообщений: 7294
Цитата (Aberrant @ 21.05.2022 - 16:35)
....ибо всё равно ему придётся на функции всё разбирать

Как я понимаю, до регулярных выражений ТС в этой жизни не дойдёт. )))

Это сообщение отредактировал ipv4 - 21.05.2022 - 16:39
 
[^]
Jobber
21.05.2022 - 16:37
0
Статус: Offline


Ярила

Регистрация: 8.08.09
Сообщений: 3559
Если хочешь замкнуть логику, то тебе нужно
do
input
while сумма < 100 or сумма >= 10000

Т.е. пока while будет TRUE, ты из цикла не выйдешь. Как только ты введешь правильно значение из диапазона, то код пойдет дальше

Это сообщение отредактировал Jobber - 21.05.2022 - 16:40
 
[^]
ipv4
21.05.2022 - 16:37
0
Статус: Offline


Ярила

Регистрация: 4.11.09
Сообщений: 7294
Цитата (Aberrant @ 21.05.2022 - 16:36)
Цитата (ipv4 @ 21.05.2022 - 16:31)

Да, ладно! Сжирает, ога.

без code trim`ит всё

А что, сложно нажать ctrl+v, выделить вставленное и нажать одну кнопку? ))))

Это сообщение отредактировал ipv4 - 21.05.2022 - 16:37
 
[^]
Aberrant
21.05.2022 - 16:40
2
Статус: Offline


На фоксе! Всегда!

Регистрация: 3.10.20
Сообщений: 2724
Цитата (Jobber @ 21.05.2022 - 16:37)
Если хочешь замкнуть логику, то тебе нужно
do
input
while сумма < 100 or сумма >= 10000

он об этом ещё не знает,
но я, зная, не стал бы, ибо такой код раз в 10 медленнее работать будет.

это сейчас у него с десяток строк,
а на среднем приложении всё выльется в задумчивость больше секунды - оно тебе нужно?
 
[^]
Aberrant
21.05.2022 - 16:42
3
Статус: Offline


На фоксе! Всегда!

Регистрация: 3.10.20
Сообщений: 2724
блять!

вот откуда у нас тормоза повсеместные.

вместо простого сравнения мы перебираем весь диапазон до совпадения.

ну афигеть прогеры, йота!
 
[^]
hime
21.05.2022 - 16:43
0
Статус: Offline


Хохмяч

Регистрация: 6.03.06
Сообщений: 5341
а, я там короче выше пропустил, что всего 3 попытки на ввод чего-нибудь. а то у меня до упора бы не отдавало карту, пока не ввёл правильный пин.
надо счетчик прикрутить.
 
[^]
Aberrant
21.05.2022 - 16:44
4
Статус: Offline


На фоксе! Всегда!

Регистрация: 3.10.20
Сообщений: 2724
ТС. ещё не думал о том, что ему нужно ввод фильтровать в кратность купюрам,
ибо сумма = 101
тоже не прокатит никак - банкомат же cranky.gif
 
[^]
Jobber
21.05.2022 - 16:44
0
Статус: Offline


Ярила

Регистрация: 8.08.09
Сообщений: 3559
Цитата (Aberrant @ 21.05.2022 - 16:40)
Цитата (Jobber @ 21.05.2022 - 16:37)
Если хочешь замкнуть логику, то тебе нужно
do
  input
while сумма < 100 or сумма >= 10000

он об этом ещё не знает,
но я, зная, не стал бы, ибо такой код раз в 10 медленнее работать будет.

это сейчас у него с десяток строк,
а на среднем приложении всё выльется в задумчивость больше секунды - оно тебе нужно?

Почему? Поясни, пожалуйста. Это особенности Python?
Я к тому, что ему нужно решение в конкректной простой задачке. По мере освоения Python, можно будет код доработать
 
[^]
amkarnaf
21.05.2022 - 16:45
3
Статус: Offline


Ярила

Регистрация: 25.12.13
Сообщений: 2691
А разве так нельзя:
if (сумма >99) and (сумма< 10000):

Здесь логическая операция AND вроде как, и проверяться должны оба условия, ну в случае если в границах. Иначе пущай повторяет.

Это сообщение отредактировал amkarnaf - 21.05.2022 - 16:49
 
[^]
Jobber
21.05.2022 - 16:46
1
Статус: Offline


Ярила

Регистрация: 8.08.09
Сообщений: 3559
Цитата (hime @ 21.05.2022 - 16:43)
а, я там короче выше пропустил, что всего 3 попытки на ввод чего-нибудь. а то у меня до упора бы не отдавало карту, пока не ввёл правильный пин.
надо счетчик прикрутить.

На следующей итерации пусть прикрутит cool.gif
 
[^]
Aberrant
21.05.2022 - 16:48
1
Статус: Offline


На фоксе! Всегда!

Регистрация: 3.10.20
Сообщений: 2724
Цитата
ТС. ещё не думал о том, что ему нужно ввод фильтровать в кратность купюрам,
ибо сумма = 101
тоже не прокатит никак - банкомат же  cranky.gif


да, точно.

придётся делать массив из возможных значений.

на PHP это примерно так:

через range делаем массив с минимум 100, максимум 10000, шаг 100,

потому через in_array проверяем входит ли в этот массив введённое число.


блять! суббота, зачем я вообще об этом думаю?

Это сообщение отредактировал Aberrant - 21.05.2022 - 16:52
 
[^]
Aberrant
21.05.2022 - 16:48
0
Статус: Offline


На фоксе! Всегда!

Регистрация: 3.10.20
Сообщений: 2724
Цитата (amkarnaf @ 21.05.2022 - 16:45)
А разве так нельзя:
if (сумма >99) and (сумма< 10000):

Здесь логическая операция AND вроде как, и проверяться должны оба условия

выше уже писал ему об этом
 
[^]
rommel13
21.05.2022 - 16:51
-1
Статус: Offline


Весельчак

Регистрация: 23.01.13
Сообщений: 179
pin=123
While True:
for i in range(3):
pin_user=int(input("Введите пин код"))
if pin_user==pin:
break
else:
print("Неверный пин код попробуйте снова")
if pin_user!=pin:
print("количество попыток исчерпано")
break
sum=int(input("Введите сумму кратную 100, не более 10000"))
if sum%100==0 and sum<=10000:
и т.д.

только проверку ввода суммы тоже надо взять в цикл while True

Это сообщение отредактировал rommel13 - 21.05.2022 - 16:53
 
[^]
Aberrant
21.05.2022 - 16:51
1
Статус: Offline


На фоксе! Всегда!

Регистрация: 3.10.20
Сообщений: 2724
Цитата (Jobber @ 21.05.2022 - 16:44)
Цитата (Aberrant @ 21.05.2022 - 16:40)
Цитата (Jobber @ 21.05.2022 - 16:37)
Если хочешь замкнуть логику, то тебе нужно
do
  input
while сумма < 100 or сумма >= 10000

он об этом ещё не знает,
но я, зная, не стал бы, ибо такой код раз в 10 медленнее работать будет.

это сейчас у него с десяток строк,
а на среднем приложении всё выльется в задумчивость больше секунды - оно тебе нужно?

Почему? Поясни, пожалуйста. Это особенности Python?
Я к тому, что ему нужно решение в конкректной простой задачке. По мере освоения Python, можно будет код доработать

потому, что while это перебор каждого числа

если у тебя сумма = 100, то этот цикл остановится на первом проходе,
а если 10000?

да, сейчас на твоём компе это очень быстро,
ибо код очень короткий и ты не заметишь разницы между 7 мс. и 70 мс.
но в конце разработки у тебя таких вот принципиальных ошибок наберётся сотня и задержка будет уже очень значительной.
 
[^]
принцесс2022
21.05.2022 - 16:57
0
Статус: Offline


Приколист

Регистрация: 5.04.22
Сообщений: 398
функцию пиши.
if (сумма >= 100) and (сумма <= 10000):
..return TRUE
else
..retur FALSE
-----------------------------
вызывай через
while(функция(input)==FALSE)
..print ("хуй")
..input = ВВОД с экрана //ждем ввод нового значения

print ("Получите ваши деньги и чек")

Это сообщение отредактировал принцесс2022 - 21.05.2022 - 17:08
 
[^]
Jobber
21.05.2022 - 16:57
0
Статус: Offline


Ярила

Регистрация: 8.08.09
Сообщений: 3559
Цитата (Aberrant @ 21.05.2022 - 16:51)
Цитата (Jobber @ 21.05.2022 - 16:44)
Цитата (Aberrant @ 21.05.2022 - 16:40)
Цитата (Jobber @ 21.05.2022 - 16:37)
Если хочешь замкнуть логику, то тебе нужно
do
  input
while сумма < 100 or сумма >= 10000

он об этом ещё не знает,
но я, зная, не стал бы, ибо такой код раз в 10 медленнее работать будет.

это сейчас у него с десяток строк,
а на среднем приложении всё выльется в задумчивость больше секунды - оно тебе нужно?

Почему? Поясни, пожалуйста. Это особенности Python?
Я к тому, что ему нужно решение в конкректной простой задачке. По мере освоения Python, можно будет код доработать

потому, что while это перебор каждого числа

если у тебя сумма = 100, то этот цикл остановится на первом проходе,
а если 10000?

да, сейчас на твоём компе это очень быстро,
ибо код очень короткий и ты не заметишь разницы между 7 мс. и 70 мс.
но в конце разработки у тебя таких вот принципиальных ошибок наберётся сотня и задержка будет уже очень значительной.

Впервые такое слышу. While это тот же if: как только дошли до условия, то проверили его, если условие TRUE вернули пользователю input (как хочет ТС). Он не должен бегать по всему диапазону. Если ему нужно только 3 попытки, добавляем counter и тоже проверяем его в while

Это сообщение отредактировал Jobber - 21.05.2022 - 16:59
 
[^]
Jobber
21.05.2022 - 17:00
0
Статус: Offline


Ярила

Регистрация: 8.08.09
Сообщений: 3559
Цитата (rommel13 @ 21.05.2022 - 16:51)
pin=123
While True:
for i in range(3):
pin_user=int(input("Введите пин код"))
if pin_user==pin:
break
else:
print("Неверный пин код попробуйте снова")
if pin_user!=pin:
print("количество попыток исчерпано")
break
sum=int(input("Введите сумму кратную 100, не более 10000"))
if sum%100==0 and sum<=10000:
и т.д.

только проверку ввода суммы тоже надо взять в цикл while True

Как я понял, ему нужно только 3 попытки на ввод суммы, т.е. pin в for это лишнее
 
[^]
БратецЛис
21.05.2022 - 17:03
2
Статус: Offline


Ярила

Регистрация: 16.08.11
Сообщений: 3785
faceoff.gif Говнокод. «Блок первой попытки» …
 
[^]
ipv4
21.05.2022 - 17:03
0
Статус: Offline


Ярила

Регистрация: 4.11.09
Сообщений: 7294
Цитата (Jobber @ 21.05.2022 - 17:00)
Как я понял, ему нужно только 3 попытки на ввод суммы, т.е. pin в for это лишнее

Схуяль "лишнее"? А, понадобится четыре попытки? Копипаст?
А ошибку исправить или код доработать? В трёх местах исправлять?

Вы чо, там все вообще уже ебанулись в корягу? Кто вас программированию то учил?!!!!
 
[^]
ipv4
21.05.2022 - 17:04
2
Статус: Offline


Ярила

Регистрация: 4.11.09
Сообщений: 7294
Цитата (БратецЛис @ 21.05.2022 - 17:03)
faceoff.gif Говнокод. «Блок первой попытки» …

"Стиль индуса"

Это сообщение отредактировал ipv4 - 21.05.2022 - 17:04
 
[^]
UlcerMordor
21.05.2022 - 17:05
1
Статус: Offline


Порою нестерпимо хочется

Регистрация: 15.05.20
Сообщений: 845
ТС, загугли "Python для тех, у кого лапки".
И там учись.
Здесь тебе под пиво насоветуют плохого.
 
[^]
Aberrant
21.05.2022 - 17:06
0
Статус: Offline


На фоксе! Всегда!

Регистрация: 3.10.20
Сообщений: 2724
Цитата (Jobber @ 21.05.2022 - 16:57)
Цитата (Aberrant @ 21.05.2022 - 16:51)
Цитата (Jobber @ 21.05.2022 - 16:44)
Цитата (Aberrant @ 21.05.2022 - 16:40)
Цитата (Jobber @ 21.05.2022 - 16:37)
Если хочешь замкнуть логику, то тебе нужно
do
  input
while сумма < 100 or сумма >= 10000

он об этом ещё не знает,
но я, зная, не стал бы, ибо такой код раз в 10 медленнее работать будет.

это сейчас у него с десяток строк,
а на среднем приложении всё выльется в задумчивость больше секунды - оно тебе нужно?

Почему? Поясни, пожалуйста. Это особенности Python?
Я к тому, что ему нужно решение в конкректной простой задачке. По мере освоения Python, можно будет код доработать

потому, что while это перебор каждого числа

если у тебя сумма = 100, то этот цикл остановится на первом проходе,
а если 10000?

да, сейчас на твоём компе это очень быстро,
ибо код очень короткий и ты не заметишь разницы между 7 мс. и 70 мс.
но в конце разработки у тебя таких вот принципиальных ошибок наберётся сотня и задержка будет уже очень значительной.

Впервые такое слышу. While это тот же if: как только дошли до условия, то проверили его, если условие TRUE вернули пользователю input (как хочет ТС). Он не должен бегать по всему диапазону. Если ему нужно только 3 попытки, добавляем counter и тоже проверяем его в while

while, это цикл!
и если ты в цикл загоняешь проверку числа, сравнивая его,
то цикл остановится только когда дойдёт до совпадения.

огромная разница между

i = 100
if 1 < 10000:
print ('true')

и

i = 0
while i < 10000:
...

тут в первом случае совало или нет.

во втором случае цикл пройдёт 100 раз пока не доберётся до 100

фигня полная!!!

Это сообщение отредактировал Aberrant - 21.05.2022 - 17:08
 
[^]
rommel13
21.05.2022 - 17:06
1
Статус: Offline


Весельчак

Регистрация: 23.01.13
Сообщений: 179
так понятнее?

Нужна помощь Python программистов
 
[^]
ipv4
21.05.2022 - 17:07
2
Статус: Offline


Ярила

Регистрация: 4.11.09
Сообщений: 7294
Цитата (UlcerMordor @ 21.05.2022 - 17:05)
ТС, загугли "Python для тех, у кого лапки".
И там учись.
Здесь тебе под пиво насоветуют плохого.

Не надо. Лучше здесь. Хотя бы сразу нахуй не посылают. ))))
 
[^]
Понравился пост? Еще больше интересного в Телеграм-канале ЯПлакалъ!
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии. Авторизуйтесь, пожалуйста, или зарегистрируйтесь, если не зарегистрированы.
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) Просмотры темы: 6301
0 Пользователей:
Страницы: (13) 1 [2] 3 4 ... Последняя » [ ОТВЕТИТЬ ] [ НОВАЯ ТЕМА ]


 
 



Активные темы






Наверх