KMOM02 Fråga 4.2

  • Författare
  • Meddelande

richard_st

på gång

  • Inlägg: 3
  • Blev medlem: 26 aug 2019, 05:23

KMOM02 Fråga 4.2

Inlägg03 sep 2019, 06:08

Hej,

Jag har kört fast på fråga 4.2 och skulle behöva input för att komma vidare. Kan inte se hur jag tänkt fel. Svaret jag får är 81, och det ska bli 152.

Kod: Markera allt
#creates three lists with numbers 0 to 9, representing the options of each number
num_list1 = range(0, 10) #Options for first number
num_list2 = range(0, 10) #Options for second number
num_list3 = range(0, 10) #Options for third number

count = 0 #Counting the number of valid plates

#calculating the number of plates where the first number can be combined with
#the second and result in the third
for num1 in num_list1:
    for num2 in num_list2:
        if num1 + num2 in num_list3:
            count += 1
        elif num1 - num2 in num_list3:
            count += 1
        elif num1 / num2 in num_list3:
            count += 1
        elif num1 * num2 in num_list3:
            count += 1

ANSWER = count


Mvh,

Richard
Användarvisningsbild

efo

dbwebb

  • Inlägg: 386
  • Blev medlem: 15 aug 2016, 11:58
  • Ort: Rödeby

Re: KMOM02 Fråga 4.2

Inlägg03 sep 2019, 07:50

Det du gör nu är att kolla om siffran som är adderat, subtraherad, multiplicerad eller dividerad av de två siffrorna finns i 3:e listan. Är inte riktigt så vi ska tänka, vi ska även loopa igenom 3:e och kolla om en räkneoperation av de två första siffrorna blir det 3:e. Så mer tänka 1 + 2 = 3, eller i ditt exempel: num1 (+-*/) num2 == num3.

richard_st

på gång

  • Inlägg: 3
  • Blev medlem: 26 aug 2019, 05:23

Re: KMOM02 Fråga 4.2

Inlägg03 sep 2019, 17:32

Tack för svaret.

Jag har ändrat koden till detta:

Kod: Markera allt
#creates three lists with numbers 0 to 9, representing the options of each number
num_list1 = range(0, 10) #Options for first number
num_list2 = range(0, 10) #Options for second number
num_list3 = range(0, 10) #Options for third number

count = 0 #Counting the number of valid plates

#calculating the number of plates where the first number can be combined with
#the second and result in the third
for num1 in num_list1:
    for num2 in num_list2:
        for num3 in num_list3:
            if num1 + num2 == num3 or num1 - num2 == num3 or num1 * num2 == num3 or (num2 != 0 and num1 / num2 == num3):
                count += 1


Nu blir mitt svar 153 i stället för 152. Vad har jag missat?
Användarvisningsbild

olov

på gång

  • Inlägg: 3
  • Blev medlem: 20 jul 2019, 12:25

Re: KMOM02 Fråga 4.2

Inlägg04 sep 2019, 04:26

Prova att printa värdet för din nummerplåt varje gång du kör
Kod: Markera allt
count+=1
Användarvisningsbild

efo

dbwebb

  • Inlägg: 386
  • Blev medlem: 15 aug 2016, 11:58
  • Ort: Rödeby

Re: KMOM02 Fråga 4.2

Inlägg04 sep 2019, 11:14

Misstänker att du räknar med nummerskylten 000 och den finns inte.

richard_st

på gång

  • Inlägg: 3
  • Blev medlem: 26 aug 2019, 05:23

Re: KMOM02 Fråga 4.2

Inlägg04 sep 2019, 12:42

Okej, där var felet. Tack!

Vilka är online

Användare som besöker denna kategori: Inga registrerade användare och 14 gäster