Trädvy Permalänk
Inaktiv
Registrerad
Jan 2016

Loops frågor

Hejsan. Är det någon som är kunnig när det kommer till logik och mestadels Looper?
hur det fungerar med do, if, while konstruktioner... jag har läst i boken och så men man blir ju lite förvirrad eftersom det är så mycket text så det jag undrar är om någon har lite kunskap eller bra sidor man kan läsa om det men kortfattat! Sammanfattat i några få meningar så det blir enklare att förstå? skulle vara tacksam för hjälp.

Trädvy Permalänk
Webbutvecklare
Moderator
Plats
::1
Registrerad
Dec 2002

@walkinpark: Det kanske blir lättare om du översätter termerna till svenska och tänker på det som vanliga ord och instruktioner. IF (OM) testar om ett villkor är uppfyllt, om det är det så utförs de tillhörande uppgifterna. WHILE ... (MEDAN ...) utför uppgifterna så länge villkoret är sant; det gör även DO ... WHILE (UTFÖR ... MEDAN), men i den varianten görs kontrollen efter att koden har körts minst en gång.

OM Katten är hungrig Mata Katten

Du frågar om katten är hungrig, och om den är det så matar du den en gång. Katten kan fortfarande vara hungrig efteråt men du frågar inte, kanske har du satt den på diet.

UTFÖR Mata Katten MEDAN Katten är hungrig

Du matar katten till dess att den är mätt, men frågar inte om den är hungrig innan du börjar. Katten kan ha åsikter om den här metoden också, men eftersom att du är en ordningsam människa som följer instruktioner till punkt och pricka så bekymrar du dig inte över det.

MEDAN Katten är hungrig Mata Katten

Du frågar om katten är hungrig, och fortsätter mata den till dess att den är mätt och belåten.

Abstractions all the way down.

Trädvy Permalänk
Inaktiv
Registrerad
Jan 2016

@Tunnelsork: For konstruktion då?
skulle du kanske skriva ut de i ett program något enkelt bara?

Trädvy Permalänk
Medlem
Registrerad
Aug 2011
Skrivet av walkinpark:

@Tunnelsork: For konstruktion då?
skulle du kanske skriva ut de i ett program något enkelt bara?

Du skriver inte vilket språk du sysslar med.

Med Javascript som exempel.

if (catIsHungry) { feedTheCat(); }

do { feedTheCat(); if (catIsFull()) catIsHungry = false; } while (catIsHungry);

while (catIsHungry) { feedTheCat(); if (catIsFull()) catIsHungry = false; }

for (var i = 0, n = cats.length; i < n; i++) { feedEachCatOnce(cat[i]); }