Programmering

Hjælp til at forstå Python programmeringen

31. marts kl. 11:40 af Oldtoft

Hej alle.

Er der nogen som kan forklare mig hvad der sker i nedenstående Python kodning, linje for linje?

_______________________________________________________________________________


def main(a):

next = str()

if a[0] == '*' and a[1] == '*':

next += '*'

for i in range(0, len(a)):

if a[i] == '*':

y = get(a, i-2) + get(a, i-1) + get(a, i+1) + get(a, i+2)

if y == 2 or y == 4:

next += '*'

else:

next += ' '

else:

y = get(a, i-2) + get(a, i-1) + get(a, i+1) + get(a, i+2)

if y == 2 or y == 3:

next += '*'

else:

next += ' '

if a[-1] == '*' and a[-2] == '*':

next += '*'

return next

def get(a, i):

if i < 0:

return 0

if i >= len(a):

return 0

c = a[i]

if c == '*':

return 1

else:

return 0

a = " ******"

print(a)

while '*' in a:

a = main(a)

print(a)
 

___________________________________

Løsninger er:


    ******

   ** ** **

  * * ** * *

  ********

 ** **** **

  * *    * *

   *      *
 

På forhånd tak for hjælpen


Brugbart svar (0)

Svar #1
31. marts kl. 21:01 af BirgerBrosa

Din kode er absolut ulæselig hvis du ikke bruger ordentlig indrykning.

Og nej, der er ingen der gider at fortælle DIG hvad DIN kode gør linje for linje. Hvad tror du det er?


Skriv et svar til: Hjælp til at forstå Python programmeringen

Du skal være logget ind, for at skrive et svar til dette spørgsmål. Klik her for at logge ind.
Har du ikke en bruger på Studieportalen.dk? Klik her for at oprette en bruger.