/ / Python: Vráti iba celé čísla - python, integer

Python: Vráť iba celé čísla - python, integer

Chcem nájsť hlavné faktory pre 13195.

for num in range(1,13196):
x = 13195/num

Chcem x len ukladať celé čísla. Snažil som sa is.integer a ale stále sa syntax chyby.

odpovede:

4 pre odpoveď č. 1

Môžete použiť prevádzkovateľ modulo skontrolovať, či je číslo rozdelené rovnomerne a potom iba x. napr.:

for num in range(1,13196):
if 13195 % num == 0:
x = int(13195/num)
print(x)

ktorý poskytuje:

13195
2639
1885
1015
455
377
203
145
91
65
35
29
13
7
5
1

3 pre odpoveď č. 2

Snažil som sa is.integer a ale stále sa syntax chyby.

Zavolá sa metóda kontroly, či je float celé číslo is_integer() nie is.integer()môžete to urobiť aj takto:

for num in range(1,13196):
x = 13195/num
if x.is_integer():
print(num)

Alebo pridaním zátvoriek:

for num in range(1,13196):
if (13195/num).is_integer():
print(num)