Я хочу умножить целое число со всеми числами в списке, который я генерирую, до достижения значения 65. Я начинаю с 2 (первый штрих) и умножаю до 63 (опять все простые числа), пока не достигню 65. Если значение не достигнуто с 2, я хочу, чтобы он попытался с 3 и так далее, пока правильное значение нам достиг. Я делаю это в python, и я тоже новичок, поэтому извиняюсь, если это базовое. Затем я хочу, чтобы распечатать номера, которые умноженные вместе, чтобы дать мне это значение, то есть я знаю, 5 и 13 дал бы мне 65. Вот некоторые из моего кода ниже:Умножьте все числа в сгенерированном списке на все большее число, чтобы достигнуть значения python
from __future__ import division
import fractions
ml = []
nl = []
p = 5
q = 17
d = 0
x = 2
y = 2
z = (p-1)*(q-1)
print z
n = p*q
print n
for x in range(z):
if (fractions.gcd(x, z) == 1):
ml.append(x)
##print ml
s = 1
for x in ml:
t = s * x
if t == 65:
print s
print x
break
else:
s = s + 1
Я думаю, что могу сказать, в чем ваша проблема, но вы получите более качественные ответы, если вы объясните, о чем вы не уверены. Как я должен угадать, что вам может понадобиться знать. –
Мне нужно знать, как его вычислить для каждого целого в списке, но я хочу, чтобы он выводил только тогда, когда значение вычисления равно 65. Это то, что я пытался сделать с последней частью кода, но это похоже, не работает, или «ничего не делает». Спасибо, что ответили на вопрос. –
Как общий совет, перечисление как ожидаемого результата, так и вашего фактического результата является хорошим ориентиром для задавания четкого вопроса. Это не имеет смысла для каждого вопроса, но в этом случае вопрос будет улучшен, сказав что-то вроде «Я ожидаю, что это напечатает 6 и 15. Однако мой цикл' for' выходит без вывода ». Не то, чтобы точная формулировка важна, но описывая причину, по которой вы считаете, что есть проблема. –