Найти - Пользователи
Полная версия: Кости (Кубик)
Начало » Python для новичков » Кости (Кубик)
1
Murderdoll666
Здравствуйте. Опять обращаюсь за помощью.
Воообщем, проблема в следующем:
Мне задали имитировать кубик, чтоб при каждом броске выдовал номер и чётный он или нет.
Проблема с чётностью.
Python ни как не хочет слушаться, выдаёт что хочет или вообще ничего.
Как заставить его работать правильно?
Начало кода:
#Taringuvise
from random import*
print ("%d" % randint(1,6))
a=randint (1,6)
как я понимаю, дальше идёт с if, но почемуто не выходит. Иногда выдаёт правильные значение, иногда нет. Ради интереса написала:
Если меньше 2-х, пиши “ссс”, а если больше то “кккк”, и если один раз выходит 6 с “кккк”, то вследующий раз 6 выдаёт с “ссс”.
Помогите пожалуйста решить задачу.
Большое спасибо за помощь.
FONTER
from random import*
print ("%d" % randint(1,6))
a=randint (1,6)
if a==1 then:
print 'Chotnoe'
if a==2 then:
print 'Nechotnoe'
#и.т.д
python4ik
if a % 2 == 0: print "ch"
else: print "n"
asv13
или
print ('chet', 'nechet')[a%2]
print ('nechet' if a%2 else 'chet')
print {1:'nechet', 0:'chet'}[a%2]
# ну и совсем изврат )
print 'nechet'[a%2*2:]
Zubchick
>> print ‘nechet’

Порадовало :D
SETY
python4ik
if a % 2 == 0: print “ch”
else: print “n”
да, так проще.


A вообще, Murderdoll666, если у тебя не 3 версия, советую ещё почитать здесь про циклы http://docs.python.org/tutorial/controlflow.html может потом пригодится. Для новичка вполне понятно. А здесь весь учебник http://docs.python.org/tutorial/controlflow.html.
Murderdoll666
FONTER
from random import*
print (“%d” % randint(1,6))
a=randint (1,6)
if a==1 then:
print ‘Chotnoe’
if a==2 then:
print ‘Nechotnoe’
Так уже пробовала, не работает

python4ik
if a % 2 == 0: print “ch”
else: print “n”
Работает, но не всегда:
>>> 
4
ch
>>> ============= RESTART =========
>>>
4
n
>>>
asv13, в вашем случае тоже не работает корректно
4
chet
>>> ========= RESTART ========
>>>
3
chet
>>>
Я не знаю, может у меня что-то не так…
SETY
A вообще, Murderdoll666, если у тебя не 3 версия, советую ещё почитать здесь про циклы http://docs.python.org/tutorial/controlflow.html может потом пригодится. Для новичка вполне понятно. А здесь весь учебник http://docs.python.org/tutorial/controlflow.html.
за учебник спасибо
asv13
Ну если печатается одно число, а затем к “a” присваивается уже другое, то понятно почему “не работает”.
надо сперва присваивать а потом его же и показывать (а не новое)
a = randint(1,6)
print ("a=%d, %s" % (a, 'nechet'[a%2*2:]))
SETY
у мну вот так все работает) asv13 верно подметил, будет тоже работать если “a” выше указать:
from random import*
a=randint (1,6)
print ("%d" % a)
if a % 2 == 0:
print "ch"
else:
print "n"
Murderdoll666
Спасибо, заработало.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB