Definite Loop vs Ubestemt Loop
En løkke er en kodeblok, der gentages i et specificeret antal gange, eller indtil en eller anden betingelse er opfyldt. En bestemt sløjfe er en sløjfe, hvor antallet af gange, den vil køre, er kendt på forhånd, inden den går ind i løkken. I en ubestemt sløjfe er antallet af gange, det vil køre, ikke kendt på forhånd, og det vil blive udført, indtil en eller anden betingelse er opfyldt.
Hvad er en bestemt sløjfe?
En bestemt sløjfe er en sløjfe, hvor antallet af gange, den vil køre, er kendt på forhånd, inden den går ind i løkken. Antallet af iterationer, det vil gentage, leveres typisk gennem en heltalvariabel. Generelt anses løkker for at være klare sløjfer. I det følgende er et eksempel på en bestemt sløjfe implementeret ved hjælp af en for loop (på Java-programmeringssprog).
for (int i = 0; i < num; i++)
// krop af for-loop
Ovenstående sløjfe udfører dens krop et antal gange leveret af den numeriske variabel. Dette kan bestemmes ud fra den oprindelige værdi af variabel i og loop-betingelsen.
Mens løkker også kan bruges til at implementere bestemte sløjfer som vist bælge (i Java).
int i = 0;
mens jeg
// krop af løkken
i ++;
Selvom dette bruger en stund-løkke, er dette også en bestemt sløjfe, da det på forhånd er kendt, at løkken vil udføre antal gange leveret af den numeriske variabel.
Hvad er en ubegrænset sløjfe?
I en ubestemt sløjfe er antallet af gange, det vil køre, ikke kendt på forhånd. Typisk vil en ubestemt løkken blive udført, indtil en eller anden betingelse er opfyldt. Mens løkker og do-while-sløjfer ofte bruges til at implementere ubestemte løkker. Selvom der ikke er nogen særlig grund til ikke at bruge til sløjfer til at konstruere ubestemte sløjfer, kunne ubestemte sløjfer organiseres pænt ved brug af løkker. Nogle af de almindelige eksempler, som du skulle bruge til at udføre ubestemte løkker, beder om at læse et input, indtil brugeren indsætter et positivt heltal, læser en adgangskode, indtil brugeren indsætter den samme adgangskode to gange i træk osv..
Hvad er forskellen mellem Definite Loop og Ubestemt Loop?
En bestemt sløjfe er en sløjfe, hvor antallet af gange, den vil udføre, er kendt på forhånd, inden den går ind i løkken, mens en ubestemt sløjfe udføres, indtil en eller anden betingelse er opfyldt, og antallet af gange, den vil udføre, ikke er kendt på forhånd. Ofte implementeres klare sløjfer ved hjælp af løkker, og ubestemte sløjfer implementeres ved hjælp af løkker og do-mens-løkker. Men der er ingen teoretisk grund til ikke at bruge til sløjfer til ubestemmelige sløjfer og mens løkker til bestemte sløjfer. Men ubestemte sløjfer kunne være pænt organiseret med mens løkker, mens bestemte løkker kunne være pænt organiseret med for løkker.