kako dodijeliti parne brojeve čak i u pythonu


Odgovor 1:

Postoji više načina na koje biste to mogli postići, ovisno o tome što tražite. Prvo možete proći kroz sve cijele brojeve do maksimuma i testirati je li svaki paran. Tada biste svaki broj stavili na odgovarajući popis, i to tako:

def evenOdd (maxNum): # Započnite s praznim popisima za parne i neparne brojeve evens = [] koeficijenti = [] # Prelistajte svaku cjelobrojnu vrijednost do ulaznog maxNum za broj u rasponu (1, maxNum + 1): # Testirajte je li broj paran ako je broj% 2 == 0: evens.append (num) drugo: koeficijenti.append (num) print ("Evens:", evens) ispis ("Tečajevi:", koeficijenti)

Ovaj pristup djeluje sasvim u redu. Međutim, nije potrebno izvoditi toliko izračuna.

Umjesto toga, znamo da u nizu prirodnih brojeva započinjete s 1, što je neparno. Kad od jednog brojimo dva, dobivamo sve neparne brojeve.

Slično tome, možemo započeti s 2 i računati po dva da bismo dobili sve parne brojeve.

U pythonu to možemo učiniti pomoću raspona koji se broji do 2, čineći kôd vrlo kratkim i jednostavnim, na primjer:

def evenOdd (maxNum): ispis ("Evens:", popis (raspon (2, maxNum + 1, 2))) print ("Tečajevi:", popis (raspon (1, maxNum + 1, 2)))

Iako se za to ne koristi petlja kao što ste tražili.


Odgovor 2:

Ja bih to učinio:

evens = [str (x) za x u rasponu (100) ako je x% 2 == 0]koeficijenti = [str (x) za x u rasponu (100) ako je x% 2 == 1]ispis ("Evens \ n" + "\ n" .join (evens))ispis ("Tečajevi \ n" + "\ n" .pridruživanje (koeficijenti))

Ovo gradi popise pomoću razumijevanja popisa (retci 1 i 2) i imajte na umu kako su za petlje unutar razumijevanja.

Da to stvarno moram učiniti, upotrijebio bih filtar za stvaranje popisa, no za njihovo ispisivanje trebala bi biti dodatna razumijevanja kako bi se brojevi pretvorili u nizove prije nego što im se pridružim. Kad sam rekao da nisam naišao ni na jednu stvarnu aplikaciju koja treba prethodno izrađen popis parnih i neparnih brojeva

Sumnjam da je to točno ono što je vaš profesor želio za vašu domaću zadaću, ali možda je bolje ako sami radite domaću zadaću, umjesto da tražite da to ljudi rade umjesto vas; nije kao da je ovo teško biti iskren.


Odgovor 3:

Odgovorio sam na vaše pitanje bez upotrebe korisnički definiranih funkcija.

Bilo koji cijeli broj koji se može točno podijeliti s 2 paran je broj (primjeri: 2, 4, 6). Bilo koji cijeli broj koji se ne može točno podijeliti s 2 neparan je broj (primjeri: 1, 3, 5). Da biste postigli popis parnih i neparnih brojeva, važno je razdvojiti ta dva. Da bismo to učinili, koristimo modulo operator (%) koji vraća ostatak podjele broja lijevo brojem s njegove desne strane.


Odgovor 4:

možete to učiniti na ovaj način,

num_list = popis (raspon (1, 10))neparni_brojevi = []parni_brojevi = []za x u num_listu: ako je x% 2 == 0: even_nums.append (x) drugo: odd_nums.append (x)ispis (parni_brojevi)[2, 4, 6, 8]ispis (neparni_brojevi)[1, 3, 5, 7, 9]

Odgovor 5:
evens = []koeficijenti = [] za i u rasponu (0, n): ako (i% 2 == 0): evens.append (i) elif (i% 2! = 0): koeficijenti.append (i) i + = 1ispis (evens)ispis (koeficijenti)

Ako imate Python 2.7, možete izostaviti zagrade za ispis i samo ukucati ispisne evenove i koeficijente ispisa.


Odgovor 6:

Jednostavan:

Ponovite elemente, provjerite vremenski element neparan / paran, dodajte na odgovarajući popis.

KODIRATI:

li = [1,2,3,4,5,6,7,8,9,99,100]paran, neparan = [i za i in li ako i% 2! = 0], [i za i in li ako i% 2 == 0]ispis (neparan, paran)

Dobar dan :)