While, Do-While
Föreställ dig en situation där du behöver upprepa vissa uppgifter, såsom att läsa data från en sensor, försöka ange lösenord eller räkna ord i en mening. I dessa fall används loopar.
Loopar gör det möjligt att köra specifika kodblock flera gånger, oavsett om det är tio, hundra eller tusentals gånger. Att förstå konceptet med loopar är avgörande inom programmering. Denna kurs behandlar de grundläggande looparna: while-loop, do-while-loop och for-loop.
While-loop
Denna loop fortsätter att köras så länge ett specifikt villkor är uppfyllt. När villkoret inte längre är uppfyllt avslutas loopen.
main.c
123while (condition) { // Loop body }
Ett grundläggande användningsområde för en loop är att visa antalet upprepningar:
Main.c
1234567891011121314#include <stdio.h> int main() { int iterations = 1; while (iterations <= 10) { printf("%d\n", iterations); iterations++; // `iterations = iterations + 1;` } return 0; }
För att stoppa denna loop är ett avslutningsvillkor nödvändigt. Ett enkelt tillvägagångssätt är att använda en räknare för att hålla reda på hur många gånger loopen körs.
En iteration avser en enskild cykel inom en loop. Om loopen kör kodblocket 10 gånger har den alltså genomfört 10 iterationer.
Raden iterations++; är avgörande eftersom den ökar räknaren (int iterations) vid varje genomgång. Räknaren används sedan för att ange villkoren för att avsluta loopen.
Det är nödvändigt att ange villkor för att avsluta loopen. Om detta inte görs leder det till en oändlig loop.
Main.c
12345678910111213141516#include <stdio.h> int main() { int array[] = { 3, 6, 2, 134, 45, 2, 564, 8, 3, 531 }; int i = 0; // Index of array while (i < 10 ) { printf("Index of element: %d\tValue of element: %d\n", i, array[i]); i++; // `i = i + 1` } return 0; }
Fokusera på uttrycket array[i].
Här betecknar variabeln i indexet för elementen i array[].
Vid varje iteration ökar variabeln i med 1. Detta innebär att uttrycket array[i] vid varje iteration hämtar nästa element i arrayen:
Den avgörande skillnaden mellan do-while- och while-loopar är att den förstnämnda garanterar minst en körning, även om villkoret initialt är falskt.
main.c
123do { // Do something } while (condition);
Denna typ av loop är användbar för att skapa grundläggande användargränssnitt. Till exempel vid lösenordsprompt, eftersom den låter dig fortsätta fråga tills inmatningen är giltig. En do-while-loop är idealisk här eftersom prompten måste visas minst en gång, medan en while-loop används när du endast går in om ett förvillkor är uppfyllt.
Main.c
123456789101112#include <stdio.h> int main() { int i = 0; do { printf("Condition `i == 1` is false, because i = 0, but loop is working...\n"); } while (i == 1); printf("Loop is over\n"); return 0; }
Tack för dina kommentarer!
Fråga AI
Fråga AI
Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal
Awesome!
Completion rate improved to 2.63
While, Do-While
Svep för att visa menyn
Föreställ dig en situation där du behöver upprepa vissa uppgifter, såsom att läsa data från en sensor, försöka ange lösenord eller räkna ord i en mening. I dessa fall används loopar.
Loopar gör det möjligt att köra specifika kodblock flera gånger, oavsett om det är tio, hundra eller tusentals gånger. Att förstå konceptet med loopar är avgörande inom programmering. Denna kurs behandlar de grundläggande looparna: while-loop, do-while-loop och for-loop.
While-loop
Denna loop fortsätter att köras så länge ett specifikt villkor är uppfyllt. När villkoret inte längre är uppfyllt avslutas loopen.
main.c
123while (condition) { // Loop body }
Ett grundläggande användningsområde för en loop är att visa antalet upprepningar:
Main.c
1234567891011121314#include <stdio.h> int main() { int iterations = 1; while (iterations <= 10) { printf("%d\n", iterations); iterations++; // `iterations = iterations + 1;` } return 0; }
För att stoppa denna loop är ett avslutningsvillkor nödvändigt. Ett enkelt tillvägagångssätt är att använda en räknare för att hålla reda på hur många gånger loopen körs.
En iteration avser en enskild cykel inom en loop. Om loopen kör kodblocket 10 gånger har den alltså genomfört 10 iterationer.
Raden iterations++; är avgörande eftersom den ökar räknaren (int iterations) vid varje genomgång. Räknaren används sedan för att ange villkoren för att avsluta loopen.
Det är nödvändigt att ange villkor för att avsluta loopen. Om detta inte görs leder det till en oändlig loop.
Main.c
12345678910111213141516#include <stdio.h> int main() { int array[] = { 3, 6, 2, 134, 45, 2, 564, 8, 3, 531 }; int i = 0; // Index of array while (i < 10 ) { printf("Index of element: %d\tValue of element: %d\n", i, array[i]); i++; // `i = i + 1` } return 0; }
Fokusera på uttrycket array[i].
Här betecknar variabeln i indexet för elementen i array[].
Vid varje iteration ökar variabeln i med 1. Detta innebär att uttrycket array[i] vid varje iteration hämtar nästa element i arrayen:
Den avgörande skillnaden mellan do-while- och while-loopar är att den förstnämnda garanterar minst en körning, även om villkoret initialt är falskt.
main.c
123do { // Do something } while (condition);
Denna typ av loop är användbar för att skapa grundläggande användargränssnitt. Till exempel vid lösenordsprompt, eftersom den låter dig fortsätta fråga tills inmatningen är giltig. En do-while-loop är idealisk här eftersom prompten måste visas minst en gång, medan en while-loop används när du endast går in om ett förvillkor är uppfyllt.
Main.c
123456789101112#include <stdio.h> int main() { int i = 0; do { printf("Condition `i == 1` is false, because i = 0, but loop is working...\n"); } while (i == 1); printf("Loop is over\n"); return 0; }
Tack för dina kommentarer!