Vinnaren i pepparkakshustävlingen!
2013-07-27, 11:59
  #853
Medlem
Tvillingens avatar
Citat:
Ursprungligen postat av Sumsarr
Hur skulle ni rekommendera att jag skriver om det här?

Det här borde fungera istället.
Kod:
sieve = [[True00] for i in range(1000)] 

Eller så här om du tycker att det blir för plottrigt med allt på samma rad
Kod:
sieve = []
for 
i in range(1000):
    
sieve.append([True00]) 
Citera
2013-07-28, 10:16
  #854
Medlem
Sumsarrs avatar
Citat:
Ursprungligen postat av Tvillingen
Det här borde fungera istället.
Kod:
sieve = [[True00] for i in range(1000)] 

Eller så här om du tycker att det blir för plottrigt med allt på samma rad
Kod:
sieve = []
for 
i in range(1000):
    
sieve.append([True00]) 

Tack. Det fungerar strålande.
Citera
2013-09-14, 20:38
  #855
Medlem
infour.13s avatar
Jag ska nu skriva en rekursiv funktion vilket betyder att det inte får finnas någon loop ( att den inte kallar på funktionen igen).

Funktionen ska beräkna tvärsumman av ett naturligt tal, till exempel, 25/10 = 2 , 25%10 = 5 , så tvärsumman 2+5= 7, och så ska den fortsätta igen. Så ifall jag har en siffra på 23456 så får jag (23456%10) + (23456/10) = 6 + 2345 = 2351, sen ska den fortsätta på 2351 tills den har blivit 10.

Snälla hjälp mig, det jag har kommit till är:

def summan(n):
if n>10:
n=n%10+(n/10)
print n,


Men för att jag ska fortsätta på det ny talet hur gör jag??
Citera
2013-09-14, 22:24
  #856
Moderator
vhes avatar
Citat:
Ursprungligen postat av infour.13
Jag ska nu skriva en rekursiv funktion vilket betyder att det inte får finnas någon loop ( att den inte kallar på funktionen igen).
Nej. Att funktionen är rekursiv betyder just att den anropar sig själv igen. Det du skriver inom parantes är fel.

Citat:
Ursprungligen postat av infour.13
def summan(n):
if n>10:
n=n%10+(n/10)
print n,
Posta kod i kodtaggar, för bövelen!

Citat:
Ursprungligen postat av infour.13
Men för att jag ska fortsätta på det ny talet hur gör jag??
Anropa funktionen summan med ditt nya n.
Citera
2013-09-14, 22:37
  #857
Medlem
infour.13s avatar
Citat:
Ursprungligen postat av vhe
Nej. Att funktionen är rekursiv betyder just att den anropar sig själv igen. Det du skriver inom parantes är fel.


Posta kod i kodtaggar, för bövelen!


Anropa funktionen summan med ditt nya n.

tackar jag är en rå nybörjare, har aldrig programmerat tidigare, men jag fick till det !!

Nu ska man iallafall låta funktionen vara rekursiv och så har jag gjort,

def summan(n):
while n>10:
n=(n%10)+(n/10)
print n,

if n>=10:
k=n%10+(n/10)
print k,

är detta rekursivt ??
Citera
2013-09-15, 18:17
  #858
Medlem
adequates avatar
Jag finner den här frågan ej värd en egen tråd så jag postar här: Vilket är det smidigaste sättet att lära sig Django, om man har en specifik tillämpning i åtanke? Jag hittade en bok som heter Practical Django Projects, är den läsvärd eller är den för gammal?
Citera
2013-09-22, 21:47
  #859
Medlem
Perfekt tråd för mig!

Jag är nybörjare och håller på med ett skolprojekt och har tankat Python 2.7.5 (det är den v vi ska använda).

När jag kör idle och skriver in min kod så kan jag inte hitta fliken Run, jag kan således inte köra Run Command någonstans. Händer inget när jag klickar F5 heller.

När jag googlar känns det som att ingen har stött på samma problem.

Är det något jag måste implementera någonstans för att få med?
Citera
2013-09-28, 05:35
  #860
Medlem
Vad har jag gjort för fel här??

Vilket/vilka av följande kodsnuttar läser in 78 ord till listan

"ord"?

Kod:
m = 1 
while m < 78: 
    ord[m] = input("Ge ord: ") 
    m += 1

m = 0 
while m <= 78: 
    ord[m] = input("Ge ord: ") 
    m += 1
 

m = 1 
ord[0] = input("Ge ord: ") 
while m < 78: 
    ord[m] = input("Ge ord: ") 
    m += 1

m = 0 
while m < 78: 
    print("Ge ord: ")
    ord[m] = input() 
    m += 1
 

m = 0 
s = "" 
while m < 78: 
    ord[m] = input("Ge ord: ") 
    s += ord[m] 
    m += 1

Jag har svarat alternativ 1,2 och 5 som rätt, men det blir fel
Citera
2013-10-13, 15:05
  #861
Medlem
Hej!

Jag ska skapa ett python-program där användaren får mata in hur många tal som helst och sedan ska programmet presentera talen, summan av talen, medelvärde och högsta/lägsta tal. Hur ska jag skriva koden för att få det att fungera?
Citera
2013-10-14, 02:41
  #862
Medlem
# coding=utf8
def main():
siffror = input ("Enter numbers: ")
siffror = int(siffror)
list(siffror)

print ("\nSiffror (lägsta): %s " % min(siffror))
print ("Siffror (alla utskrivna) %s " % siffror)
print ("Siffror (högsta): %s " % max(siffror))

print ("Siffror (medeltal) %s " % sum // len(siffror))
print ("Siffror (summa) %s " % sum(siffror))


main()


Såhär har det blivit men får typeerror int object is not iterable och har ingen aning om varför!
Citera
2013-10-14, 15:07
  #863
Medlem
droles avatar
Citat:
Ursprungligen postat av bondeheaton
# coding=utf8
def main():
siffror = input ("Enter numbers: ")
siffror = int(siffror)
list(siffror)

print ("\nSiffror (lägsta): %s " % min(siffror))
print ("Siffror (alla utskrivna) %s " % siffror)
print ("Siffror (högsta): %s " % max(siffror))

print ("Siffror (medeltal) %s " % sum // len(siffror))
print ("Siffror (summa) %s " % sum(siffror))


main()


Såhär har det blivit men får typeerror int object is not iterable och har ingen aning om varför!
%s står för strängar
%d är int

Alltså ska du skriva något sånt här:
Kod:
print ("Siffror (alla utskrivna) %d " % siffror)
Alternativt göra om variabeln siffror till en sträng såhär:
Kod:
print ("Siffror (alla utskrivna) %s " % str(siffror))
Citera
2013-10-14, 18:15
  #864
Moderator
vhes avatar
Citat:
Ursprungligen postat av bondeheaton
Såhär har det blivit men får typeerror int object is not iterable och har ingen aning om varför!
Använd kodtaggar för bövelen!

Du får ett TypeError för att du försöker göra en lista av en integer. Det står i felet vilken rad det går dåligt på så titta på den raden.

Om du vill mata in flera siffror på samma rad, typ: "1 2 27 42", så behöver du splitta upp strängen så du får varje siffra för sig. Därefter behöver du göra om varje del till en siffra.
Titta på string.split(), för hur du kan göra om din enskilda sträng till en lista med strängar, och fundera sedan över hur du skall förvandla varje enskilt element till integers.

Själva räkningskoden ser sund ut, det är i början när du försöker ta användarinput och göra om den till en lista med integers som det är lite trasigt.
Citera

Stöd Flashback

Flashback finansieras genom donationer från våra medlemmar och besökare. Det är med hjälp av dig vi kan fortsätta erbjuda en fri samhällsdebatt. Tack för ditt stöd!

Stöd Flashback