Gå til innhold

Uventet resultat i for løkke. Oddetall og partall.


Anbefalte innlegg

Denne koden fungerer helt til jeg skal telle opp antall partall og oddetall.

 

 

import itertools

 

f= open('testrekker.txt','w')

numb = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12}

it = itertools.combinations(numb,7)

 

#summerer tall rekka.

for x in it:

    a = sum(x)

 

#teller oddetall og partall

numbers = x

count_even = 0

count_odd = 0

for i in numbers:

    if not i % 2:

        count_even+=1

    else:

         count_odd+=1    

 

#skriver resultattet til tekstfil

    f.write(str(x))

    f.write(str(a))

    f.write(str(count_even))

    f.write(str(count_odd))

    f.write('\n')

f.close()

 

 

Resultatet blir: 


(6, 7, 8, 9, 10, 11, 12)6310

(6, 7, 8, 9, 10, 11, 12)6311

(6, 7, 8, 9, 10, 11, 12)6321

(6, 7, 8, 9, 10, 11, 12)6322

(6, 7, 8, 9, 10, 11, 12)6332

(6, 7, 8, 9, 10, 11, 12)6333

(6, 7, 8, 9, 10, 11, 12)6343


 

Skulle vært:

(1,2,3,4,5,6,7) 63, 3, 4

osv.... 

Lenke til kommentar
Videoannonse
Annonse

Når du skal telle oddetall og partall så setter du "numbers = x". "x" er variabelen i loopen rett ovenfor, men "numbers = x" og resten av koden står utenfor

"for x in it:" loopen, så koden som teller oddetall og partall vil bare bli kjørt for det siste elementet i "it".

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...