Meddelande

Du befinner dig just nu på en äldre version av Pluggakuten, gamla.pluggakuten.se. Nya Pluggakuten lanserades den 6 februari 2017 och du finner forumet på www.pluggakuten.se.

På gamla.pluggakuten.se kan du fortfarande läsa frågorna och svaren som ställts, men du kan inte skapa ett nytt konto eller nya trådar. Är du redan medlem kan du däremot fortfarande logga in och svara i befintliga trådar. Nya frågor och nytt konto skapar du på det nya forumet, välkommen dit!

Python (Hur exekveras programmet)

TB16
Medlem

Offline

Registrerad: 2014-11-05
Inlägg: 1078

Python (Hur exekveras programmet)

Mitt resonemang:

Programmet startar på A och eftersom B är sann så skriver den ut indenteringen C. D är fristående och skrivs ut oavsett om B är sann eller falsk så efter C exekveras D. Sedan startar vi om processen från B till D två ggr till? Dvs:

ABCDBCDBCD.  Varför är detta fel? Varför körs bara D en enda gång (sist)?

http://i65.tinypic.com/23igjkn.png

 
joculator
Medlem

Offline

Registrerad: 2012-09-12
Inlägg: 3920

Re: Python (Hur exekveras programmet)

D är ju utanför while-loopen och körs när while-loopen är färdig pch då såklart bara en gång.

Senast redigerat av joculator (2016-06-17 13:44)

 
SeriousSquid
Medlem

Offline

Registrerad: 2010-05-17
Inlägg: 3643

Re: Python (Hur exekveras programmet)

Endast det som ligger i indrag exekveras inom while-loopen.
Att D inte har indrag betyder att denna först ska hanteras när while-loopen är klar.

A (första raden)
BC BC BC (tre loopar)
D (det som kommer efter loopen)

Senast redigerat av SeriousSquid (2016-06-17 13:44)


"...a result is trivial if: (a) it follows from the underlying definitions without any trickery or ingenuity and (b) a written specification of how it follows runs the danger of suggesting that it is nontrivial."
 
joculator
Medlem

Offline

Registrerad: 2012-09-12
Inlägg: 3920

Re: Python (Hur exekveras programmet)

A
while B:
     C
     D
     E
F

ger med amma förutsättningar
ACDECDECDEF

 
SeriousSquid
Medlem

Offline

Registrerad: 2010-05-17
Inlägg: 3643

Re: Python (Hur exekveras programmet)

När jag väl tänker efter borde det egentligen löpt

A (första raden)
BC BC BC (tre loopar)
B (kontroll av B som avgör att loopen inte ska köras)
D (det som kommer efter loopen)

ABCBCBCBD

För villkorssatsen måste fortfarande behandlas för att den ska kunna avgöras falsk och man hoppar förbi while-loopens innehåll.

Senast redigerat av SeriousSquid (2016-06-17 13:52)


"...a result is trivial if: (a) it follows from the underlying definitions without any trickery or ingenuity and (b) a written specification of how it follows runs the danger of suggesting that it is nontrivial."
 
TB16
Medlem

Offline

Registrerad: 2014-11-05
Inlägg: 1078

Re: Python (Hur exekveras programmet)

Tack för bra support!! smile

 
Nikkster
Medlem

Offline

Registrerad: 2011-12-13
Inlägg: 237

Re: Python (Hur exekveras programmet)

Precis så som Serious~ sa sist.

Jag tror det underlättar om du ser while-loop som ett gäng upprepande if-satser (vilket precis som det är i själva verket).


Fråga gärna om .NET (toknörd) och datavetenskap. Försöker titta hit då och då när det finns tid.
 


Sidfot

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson

Powered by Mattecentrum
 |  Denna sida använder cookies |  Kontakta oss |  Feedback |